perm filename REPORT.TXT[DOC,CSR]2 blob sn#232644 filedate 1976-08-23 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00069 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00006 00002	 
C00008 00003	TABLE OF CONTENTS						PAGE 2
C00011 00004									PAGE 3
C00013 00005	OVERVIEW							PAGE 4
C00018 00006	OVERVIEW							PAGE 5
C00024 00007	OVERVIEW							PAGE 6
C00032 00008	USER'S MANUAL		     					PAGE 7
C00036 00009	USER'S MANUAL							PAGE 8
C00041 00010	USER'S MANUAL							PAGE 9
C00046 00011	USER'S MANUAL							PAGE 10
C00050 00012	USER'S MANUAL							PAGE 11
C00055 00013	USER'S MANUAL							PAGE 12
C00059 00014	USER'S MANUAL							PAGE 13
C00062 00015	USER'S MANUAL							PAGE 14
C00067 00016	USER'S MANUAL							PAGE 15
C00071 00017	USER'S MANUAL							PAGE 16
C00073 00018	USER'S MANUAL							PAGE 17
C00076 00019	USER'S MANUAL							PAGE 18
C00081 00020	USER'S MANUAL							PAGE 19
C00086 00021	USER'S MANUAL							PAGE 20
C00088 00022	USER'S MANUAL							PAGE 21
C00091 00023	USER'S MANUAL							PAGE 22
C00095 00024	USER'S MANUAL							PAGE 23
C00099 00025	USER'S MANUAL							PAGE 24
C00102 00026	DATA FILES							PAGE 25
C00107 00027	DATA FILES							PAGE 26
C00110 00028	DATA FILES							PAGE 27
C00115 00029	DATA FILES		 					PAGE 28
C00119 00030	DATA FILES							PAGE 29
C00122 00031	MAINTENANCE MANUAL						PAGE 30
C00127 00032	MAINTENANCE MANUAL						PAGE 31
C00131 00033	MAINTENANCE MANUAL						PAGE 32
C00136 00034	MAINTENANCE MANUAL						PAGE 33
C00141 00035	MAINTENANCE MANUAL						PAGE 34
C00146 00036	MAINTENANCE MANUAL						PAGE 35
C00151 00037	MAINTENANCE MANUAL						PAGE 36
C00155 00038	MAINTENANCE MANUAL						PAGE 37
C00160 00039	SENDER             						PAGE 38
C00164 00040	SENDER             						PAGE 39
C00167 00041	SENDER             						PAGE 40
C00171 00042	APPENDIX A							PAGE 41
C00175 00043	APPENDIX A							PAGE 42
C00179 00044	APPENDIX A							PAGE 43
C00182 00045	APPENDIX A							PAGE 44
C00185 00046	APPENDIX A							PAGE 45
C00188 00047	APPENDIX A							PAGE 46
C00191 00048	APPENDIX A							PAGE 47
C00193 00049	APPENDIX A		 					PAGE 48
C00197 00050	APPENDIX A							PAGE 49
C00201 00051	APPENDIX A							PAGE 50
C00203 00052	APPENDIX A							PAGE 51
C00206 00053	APPENDIX A							PAGE 52
C00209 00054	APPENDIX A							PAGE 53
C00213 00055	APPENDIX A							PAGE 54
C00216 00056	APPENDIX A							PAGE 55
C00218 00057	APPENDIX B							PAGE 56
C00222 00058	APPENDIX B							PAGE 57
C00227 00059	APPEXDIX B							PAGE 58
C00229 00060	APPEXDIX B							PAGE 59
C00238 00061	APPENDIX B							PAGE 60
C00241 00062	APPENDIX B							PAGE 61
C00244 00063	APPENDIX B							PAGE 62
C00248 00064	APPENDIX B							PAGE 63
C00251 00065	APPENDIX C							PAGE 64
C00258 00066	APPENDIX C							PAGE 65
C00260 00067	APPENDIX C							PAGE 66
C00262 00068	APPENDIX C							PAGE 67
C00263 00069	APPENDIX C							PAGE 68
C00265 ENDMK
C⊗;
 
 
 
 
 
 
 
 
 
		    THE COMPUTER SCIENCE REPORT SYSTEM
 
 
 
 
 
 





			 William T. Coleman III

 
		    Artificial Intelligence Labratory
		       Computer Science Depardtment
			   Stanford University

 
			     1 AUGUST 1976
 
 


 
 
 
 
 
 
			      Abstract
 
	This report describes the Stanford University Computer
	Science Department report distributing system.  The system
	is a collection of programs intended to perform all of the
	administrative functions concerned with technical report
	distribution.  The design, use, and maintenance are
	thoroughly discussed.
 
 
 
 
 
 
This work was accomplished in partial fulfillment of the degree requirements
for a Master of Science in Computer Science, Computer Engineering.
TABLE OF CONTENTS						PAGE 2
 
 
		       TABLE OF CONTENTS
 
 
 
PART	SECTION		TOPIC					PAGE
 
 
I.      OVERVIEW
 
	 I.1		INTRODUCTION.............................4
	 I.2		FUNCTIONS................................4
	 I.3		DESIGN...................................5
	 I.4		ACKNOWLEDGEMENTS.........................6
 
 
II.   	USER'S MANUAL
 
	II.1		STANDARDS AND CONVENTIONS................7
	II.2		ENTERING THE SYSTEM......................8
	II.3		DATA FILE MAINTENANCE....................8
	II.4		SEARCHING THE ADDRESS FILE...............9
	II.5		CHANGING THE ADDRESS FILE................10
	II.5.1		 THE ADD/MOD LOOP........................10
	II.5.1.1	  OPERATING THE ADD FUNCTION.............11
	II.5.1.2  	  OPERATING THE MOD FUNCTION.............12
	II.5.2		 OPERATING THE DEL FUNCTION..............13
	II.6		MAILING THE ABSTRACT LIST................14
	II.6.1		 ADDING AN ABSTRACT LIST REPORT ENTRY....15
	II.6.2		 MAILING THE ABSTRACT LIST...............17
	II.7		PROCESSING REPORT ORDERS.................18
	II.8		MAILING THE REPORTS......................19
	II.9		PROCESSING PAYMENTS RECEIVED.............21
	II.10		RELATED SYSTEM FUNCTIONS.................22
	II.10.1		 LISTING A FILE..........................22
	II.10.2		 DISPLAYING/EDITING A FILE...............23
	II.10.3		 RESERVING SERVICE LEVEL.................24
 
 
III.    DATA FILES
 
	III.1		THE ADDRESS FILE.........................25
	III.2		THE HASH CODE CROSS-REFERRENCE FILE......26
	III.3		THE DATA FILE............................27
	III.4		THE REPORT FILE..........................27
	III.5		THE ORDER FILE...........................28
	III,6           HISTORICAL REPORT FILE...................29
	III,7		THE TEMPORARY FILES......................29
 
								PAGE 3



PART	SECTION		TOPIC					PAGE
 
IV.	MAINTENANCE MANUAL
 
 
	IV.1		INTRODUCTION.............................30
	IV.2		SOME HACKS...............................30
	IV.3		REPORT STRUCTURE.........................31
	IV.3.1		CSREPT...................................32
	IV.3.2		LISTUP...................................34
	IV.3.3		MAKEML...................................35
	IV.3.4		CMONEY...................................36
	IV.3.5		CSMAIL...................................37
 
 
 
V.	SENDER  


	V.1		SENDER...................................38
 	V.2		USE OF SENDER............................38
	V.3		MAINTENANCE OF SENDER....................39
	V.4		RUN EXAMPLE..............................40



VI.	APPENDIX
 
 
	A  		EXAMPLE RUN..............................41
	B  		EXAMPLE OUTPUT...........................56
	C  		EXAMPLE FILES............................64
	D  		SAIL CODE LISTINGS.......................69 - 172
OVERVIEW							PAGE 4
   			I. OVERVIEW
 
 
I.1  INTRODUCTION
 
	This document describes the operation and maintenance of
the Computer Science Report Distribution System, herein referred to 
as the REPORT system.  The REPORT system is a collection of
programs intended to perform most of the administrative functions
concerned with the distribition of Computer Science Reports by the 
the CS Library and Publications Committee.
 
 
I.2 FUNCTIONS
 
	The following list is a summary of the functions performed by the
REPORT system.  The program that is primarily responsible for each function
is listed in parenthesis.

	     1. System control.  The system is controlled by a single entry
		point through which any of the processes can be reached. This
		is done for simplicity of operation, and to insure file
		integrity. (CSREPT)
             2. Maintain the address file.  This function includes performance
		of all changes to address information, and the associated
		accounting information maintained on each individual.(LISTUP)
	     3. Mail the abstract list.  This includes the maintainence of
		a report information file, printing of mailing labels,
		production of a master order form, and summarizing the 
		processed data.(MAKEML)
	     4. Process orders, and receive payment.  This includes the
		proper accounting for transactions.  (CMONEY)
	     5. Mail the reports.  This function produces the invoice,
		produces the mailing labels, charges the accounts for 
		documents mailed, informs customers if their order is out of 
		stock, checks for inactive accounts, and reports on its
		processing. (CSMAIL)
 
	There are two additional auxiliary functions performed by CSREPT
for the convience of the  operator:

	     1. Address file search capability.  This function allows
		the operator to search the address file using either
		the hash code, zip code, or name as the search key.  This
		function is also called automatically if at any time during 
		the processing an unknown hash is encountered. (called SEARCH)
	     2. System data file management.  This function allows the operator
		to change the REPORT system operating data without recompiling 
		the programs.(called DATA)
 
	There is one stand-alone program designed to process late orders from
any source, even if not in the address file.  The program is called SENDER, and
is discussed in Section V.
 
	The system is located under the programmer name: CSR in the following
areas of disk:
		USE,CSR		User dump file, data files, bibliography.
		MNT,CSR 	The sail code files.
		DOC,CSR		The system documentation.
OVERVIEW							PAGE 5
 
I.3 DESIGN
 
 
	The REPORT system is designed as a system of five programs
that are reached through a common entry point.  The programs themselves
are basically used to build, update, and access a series of data files.
These data files are the key to the processing, and therefore it is
important that they be maintained properly. The following chart is
intended to provide an idea of the data flow:
 			       "AL USE,CSR"
			      ."RUN REPORT"
				    |
				    |
	 __________ 		____↓_____               ____________
	|  SEARCH  |	       |  CSREPT  |             |   DATA     |
	|data file |← - - - - →|entry/exit|← - - - - - →|data file   |
	|search    |           |          |             |maintenance |
	| -------- |	       |	  |		| ---------- |
	|*"SEARCH" |	       |	  |		|*"DATA"     |
	|__________|	       |__________|             |____________|
	     ↑                      ↑                         ↑        
	     |                      |                         |
	     |                                                ↓
	ADDFIL.DSK                  |                      LBDATA

				    ↓
         - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
        |                     |                     |                     |

        |                     |                     |                     |

 _______↓_______       _______↓_______       _______↓_______       _______↓_______
|   LISTUP      |     |    MAKEML     |     |    CMONEY     |     |     CSMAIL    |
|maintain  the  |     |report list(1) |     |process orders |     |mailing labels |
|address file   |     |order form(2)  |     |and payments   |     |invoices(2)    |
|and hash cross |     |labels(3)      |     |               |     |summary(3)     |
|reference file |     |summary(4)     |     |               |     |report hist(4) |
| -------------	|     |	------------- |	    | ------------- |     | ------------  |
|		|     |		      |	    |*"CSORD" or    |     |		  |
|*"LIST"        |     |*"MAKEml"      |     |*"CSRECD"      |     |*"CSMAIL"      |
|_______________|     |_______________|     |_______________|     |_______________|
	↑               ↑          |                ↑               ↑         |
	|		|	   |		    |		    |	      |
	↓		↓	   ↓		    ↓		    ↓	      ↓
   ADDFIL.DSK      REPT.DSK(1)  INFORM(2,4)    ADDFIL.DSK      ADDFIL.DSK  LABELS(1)
   HASHES	  ORDER.DSK     JULLAB(3)      ORDER.DSK       ORDER.DSK INVOICES(2,3)
								REPTFL.DSK(4)
 
	The REPORT system is designed such that the operator does not have to
be familiar with the use of the monitor or text editing functions in order to
execute any of the above programs. The line editor, however is available at all
times, and is specifically used in LISTUP. The system is entered by typing:
"RUN REPORT" while at the monitor level.  Once in the system, any of the 
programs can be entered by responding to the prompt "*" as indicated above.
The programs are all designed to run interactively with the operator, and
help is available at all entry points by typing responding "HELP".  If at any
time the operator types "?" or makes an unexpected entry, the system will
respond by displaying the legal operator inputs at that point.
OVERVIEW							PAGE 6
	There are two categories of data files, those that are permanent(P)
and should always be part of the processing, and the temporary(T) files created
by REPORT to hold the system output until it can be listed.  A brief
description of each type is given here, and the details are provided in Section III.
   TABLE     TYPE         DESCRIPTION		       	   MODIFICATION
___________________________________________________________________________________
ADDFIL.DSK  | P  |This file contains all of the |LISTUP - allows the operator to
            |    |address and accounting data   |         add, delete, or modify
            |    |on all customers.             |         any entry.
            |    |                              |CMONEY - updates back order, and
            |    |                              |         payment data.
            |    |                              |CSMAIL - updates debits.
            |    |                              |(ETV DOES THE MODIFICATIONS)
____________|____|______________________________|__________________________________
HASHES      | P  |This is a cross-reference     |CSREPT - builds the file, but only
            |    |file that allows random access|         if it is not saved.
            |    |to address file entries by    |LISTUP - modifies the file, when
            |    |hash or zip code.             |         necessary
____________|____|______________________________|__________________________________
LBDATA      | P  |This file contains the system |CSREPT - performs any modifications
            |    |variable operating data, and  |         as directed in the DATA.
            |    |the invoice format.           |CSMAIL&SENDER - updates taxes owed.
____________|____|______________________________|__________________________________
REPT.DSK    | P  |This file contains the data   |MAKEML - builds the monthly report
            |    |concerning each report that is|         files by entering data
            |    |needed for system processing. |         interactively.
____________|____|______________________________|__________________________________
REPTFL.DSK  | P  |This file contains all of the |CSMAIL - builds the file
            |    |past reports, for back orders.|SENDER - uses the file, updates stock
____________|____|______________________________|__________________________________
ORDER.DSK   | P  |This file contains the orders |MAKEML - initializes the file each
            |    |for each month.               |         month when the REPT.DSK
            |    |                              |	  file is built.
            |    |                              |CMONEY - adds orders to the file.
            |    |                              |CSMAIL - deletes orders from the
            |    |                              |	  file when they are filled.
____________|____|______________________________|__________________________________
INFORM      | T  |This file contains the master |MAKEML - builds the file, it should
            |    |order forms, and the abstract |         be deleted by the operator
            |    |mailing summary.              |         after it is listed.
____________|____|______________________________|__________________________________
"mon"LAB    | T  |This file contains the month's|MAKEML - builds the file to be deleted
            |    |abstract mailing labels.      |         when listed.
____________|____|______________________________|__________________________________
INVOICES    | T  |This file contains all of the |CSMAIL - builds the file to be listed
            |    |invoices for the month's      |	  and deleted by the operator
            |    |orders, and the summary       |         as soon as it is listed.
____________|____|______________________________|__________________________________
LABELS      | T  |This file contains the mailing|CSMAIL - builds the file to be deleted
            |    |labels for all those who      |          when listed.
            |    |ordered reports, and also for |SENDER - also builds the file.
            |    |inactive accounts.            |
____________|____|______________________________|__________________________________
I.4 ACKNOWLEDGEMENTS
	I would like to thank Les Earnest and Brian McCune for their much needed help
with the programming and design details of the system.  I also want to express my 
appreciation to Pat Jacobs for her assistance during the refinement of the system,
and the many suggested operator interface changes that I have implemented. Finally,
to Don Knuth-my advisor-for his guidance, and the opportunity to undertake this project.
USER'S MANUAL		     					PAGE 7

 
 
	   		II. USER'S MANUAL


 
	This section is the self-contained user's guide to the Computer
Science Report System.  It tells you how to get started, how to run
each of the functions, and provides example operator responces.  A run
time example is provided in the appendix.

  
 
II.1 STANDARDS AND CONVENTIONS
 
	The system conventions used to communicate with the operator are:
 
		CCCCCssss   -   When the program displays the operators
				input options those characters in capital
				letters are mandatory as inputs, those in
				small letters are optional.
		<cr>	    -   Indicates the operator is to type a carriage
				return.
		*	    -   This is the prompt character used to indicate
				that the system is ready to accept a typed
				in request from the operator.
 
	There are several types of inputs for which the system will respond
in a standard manner no matter which function is being executed.
 
		?<cr>	    -   Will always display the operators legal
				responses to the particular system query.
		HELP<cr>    -   Will provide run time help, and usually
				legal responses at any function entry.
				It will provide just legal responses at
			 	any other point.
		<cr>	    -   At any entry/exit point during the processing
                                <cr> will cause termination of the current 
				function, and return to the function
				from which processing started.(ie in LISTUP
				will return to CSREPT, or when adding to the
				address file it will return to LISTUP etc).
		default     -   If at any time the operator types in something
				other then what the program expects, the input
				will be ignored, and the legal responses will
				be displayed.
 
	These standard system functions are intended for the convenience of
the operator, and to allow the system to be used by someone who is not familiar
with the text editing system, or the operating system.  There are a few listing,
file maintenance, and file editing functions that may be helpful, these will be 
explained later in this section. The operator would find it helpful to become
familiar with the  line editor, and it is necessary in order to perform 
modifications to the address file using LISTUP.

	NOTE  It is immaterial whether operator inputs are entered in upper
or lower case.  The REPORT system will convert all alpha inputs to upper
case for processing.
USER'S MANUAL							PAGE 8
II.2 ENTERING THE SYSTEM
 
	The system is entered from the monitor level (type CALL on a display,
or <control>C on a teminal).  The operator must first gain access to the files
by typing: AL USE,CSR<cr>.  The system is started by typing: RUN REPORT<cr>.  
CSREPT will start processing, and read in the data tables (this will take about
1.5 seconds of computer time).  The system will then signal that it is ready:
	 	CSREPT - what can I do for you? *
 
	The accepatable responses to this are:
		LISTup<cr> - to change the address file (enters LISTUP).
		MAKEml<cr> - to send abstract listing (enters MAKEML).
		CSORD<cr>  - to process incoming orders (enters CMONEY).
		CSMAIL<cr> - to send out the reports (enters CSMAIL).
		CSRECD<cr> - to process payments (enters CMONEY).
		DATA<cr>   - to check or modify run data (enters CSREPT/DATA).
		SEARCH<cr> - to search the address file (enters CSREPT/SEARCH).
		HELP<cr>   - to describe the REPORT system.
		?<cr>	   - to display the operator input options.
		<cr>	   - to terminate porcessing, and exit the system.
 
	From the user's point of view the CSREPT function can be thought of as
a switch through which any of the system functions can be reached.  Once the 
processing of any of the functions is complete the program will return to
CSREPT, and any other function can be called.  This will continue until you
are ready to exit.
 
 
II.3 DATA FILE MAINTENANCE
 
	The data file maintenance is entered by responding to the CSREPT 
system query as follows:
		CSREPT - what can I do for you? *DATA<cr>
 
	The data function will then display the current values of the eight
data items that can be modified.  These are:

		DATA - THE CURRENT VALUES ARE:
    	        1.	BASE	-  The base printing price of a document.
		2.	PRICE	-  The document price per page.     
   	        3.	TAX	-  The current California state tax.
   	        4.	COPIES	-  The number of masters to be printed.
	        5.	LINELB	-  The number of lines per label.
	        6.	LINEST	-  The number of lead lines before print starts.
	        7.	PAT	-  The name to be used as a return addressee.
	   	8.	OWE	-  The computed amount of California state tax owed.
 
	The data function will then prompt for input request:
		NUMBER OF THE ITEM TO BE CHANGED, OR <cr> TO EXIT *
 
	If a <cr>  is given the program will pass control back to CSREPT, 
if anything but an accceptable data item number is given an error is
detected, otherwise the processing will request the new value:
 
		NEW VALUE *
 
	The acceptable response to this is the new value followed by a <cr>.
This will cause the change to be made and the data items to be redisplayed.
Processing will continue in a loop until you exit the data function.
USER'S MANUAL							PAGE 9
II.4 SEARCHING THE ADDRESS FILE
	
	The search capability allows the operator to search for
an entry in the address file by one of three keys:
 
	HASH CODE - 	The user's unique hash code which will be
			printed on all correspondence.  This is the
			fastest and most efficient search.
	ZIP CODE  -	This is a very efficient search which will
			dislay all of the entries having the specified
			zip (23 at a time so as not to overflow the
			screen), and allow the operator to select the
			one desired.
	NAME	  -	This search will look for an match, search all
			of the names in the address file (not the address).
			This is a slow, and inefficient search to be
			used only as a last resort. (ie if PROF is input
			all professors, and names including "prof" ).

	The search function is entered by responding to the CSREPT 
system query as follows:
		CSREPT - what can I do for you? *SEARCH<cr>
 
	In order to execute a search the program asks you in order
if you know the hash, or zip code.  If either of these questions are 
answered affirmatively the search will be accomplished after asking
the code.  If you know neither code the program will ask for a name.
The system prompts are:
	SEARCH: DO YOU KNOW THE HASH CODE? (Y, N OR <cr> to exit) *
	SEARCH: DO YOU KNOW THE ZIP CODE? (Y, N OR <cf> to exit) *
 
	Once the type of search has been determined the program will
ask for the necessary data as follows:
	HASH CODE? *
	ZIPCODE? *
	LAST NAME (OR EXIT) *
 
	If the hash code search is being executed the entry will be 
displayed, if found, and you will be asked if you wish to perform 
another search. This will continue until you are ready to exit.
 
	Both the zip and name searches will display the hash codes,
names, and address file page number for all of the matches found.
You will be given the opportunity to input the hash, if found, and
the system will then display the entry.  Both of these are one time
searches and they will exit back to CSREPT after each search.  This
is done because these two modes are intended as the automatic search
default.  For details concerning the address file organization see
the ADDFIL.DSK description in section three of this report.
 
	NOTE:  The zip code search uses the zip information in the user 
hash to find entries, for this reason it can be used to find all
addressees in any country besides the US by simply entering the name of
the country instead of a zip. (ie if you respond ZIPCODE? *FRANCE<cr>,
all of the Franch customers will be listed).  This also works for all
interdepartmental addressees by responding IDMAI<cr>, Office of Naval
Research by responding ONRXX<cr>, Defense Advanced Projects Research
Agency by responding DARPA<cr>, and automatic by responding AUTOM<cr>.
USER'S MANUAL							PAGE 10
II.5 CHANGING THE ADDRESS FILE
 
	The address file maintence program is intended to maintain
the address file and hash code cross-reference file in proper order,
while allowing the operator to make any changes desired.  The program
will automatically compute, or recompute, the hash code if necessary.
All changes to the address file are accomplished using the ETv text
editor under program control.
 
	In order to do this the LISTUP function is divided into three
subfunctions:
		1. ADD	   -	to add new entries to the file.
		2. MODIFY  -	to change any of the address file entries.
		3. DELETE  -   	to delete entries from the file.
These functions are designed such that ADD and MODIFY run together
for efficiency.  Because of this you will find that it is much faster
to do all additions and modifications together with the deletes being
done either before, or after all adds/mods.

	The LISTUP function is entered by responding to the CSREPT 
system query as follows:
		CSREPT - what can I do for you? *LIST<cr>
 
	The system will then prompt you for the desired function:
		LISTUP - FUNCTION OF <CR> TO EXIT *
 
		The acceptable responses are:
			ADD<cr>
			MODify<cr>
			DELete<cr>
			ADD HELP<cr>
			MODify HELP<cr>
			DELete HELP<cr>
			HELP<cr>
			<cr>
	All of these responses except <cr> will cause the specified 
action to take place, and then control will return to LISTUP. The help
requests return immediately, the processing requests perform deletes or
adds/mods in a loop until requested to return.
 
II.5.1 THE ADD/MOD LOOP
 
	The add and mod functions are linked together in that when adding
someone to the file the ADD function will request all of the necessary
information and build the entry, it will then call the MOD function to 
allow the user to check the entry before it is added to the update list.
This is done to allow the user to correct any mistakes.  Once the ADD
or MOD functions are requested the processing will continue asking for 
more changes as follows:
	ADD/MOD enter option *
		Legal responses:
		ADD<cr>	 	process another addition to the file.
		MODify<cr> 	process another modification to an entry.
		ADD HELP	add help
		MODify HELP<cr>	mod help
		<cr>		to actually insert the entries, and return 
				processing to LISTUP.
	Thus all of the changes can be input at one time, and when this
is complete only then will the file actually be changed.
USER'S MANUAL							PAGE 11
II.5.1.1 OPERATING THE ADD FUNCTION
 
	All that this function does is to ask the operator for 
the address information it needs to construct the user's address 
entry,hash code, and accounting data.  In order to do this you
will be asked for the following information:

	TYPE THE FIRST LINE(THE NAME) OF THE ENTRY OR <cr> TO EXIT *
	The acceptable responses are:
		<cr>	this will exit the add loop, and take you to
			the ADD/MOD loop controller.
		name	this is the name of the entry as you wish to
			see it on the first line of the mailing address.
			There are no restrictions on its format.
 
	BILLING CATEGORY *
	The acceptable responses are:
		<cr>	for a normal entry to be charged for all reports.
		N<cr>	if the entry is to be on the ONR mailing list.
		M<cr>	if the entry is to be on the ARPA mailing list.
		A<cr>	if the entry is to automatically receive reports.
		F<cr>	if the entry is to receive all reports free of charge.
	This information will be used to determine if an individual is to 
	be charged for reports ordered. 
 
	ZIP CODE OR COUNTRY *
	The acceptable responses are:
		#####<cr>	the 5 digit zip code for US customers.
				Do not reenter the zip with the address.
		FFFFF<cr>	the name of the country for foreign
				customers. Do reenter the country with
				the address.
		USSR<cr>	for Russian customers use USSR.
		IDMAI<cr>	Interdepartmental entries (Stanford Univ).
	This is input separately so that it can be used as part of
	the hash code.  In this manner the addresses can be found, and 
	sorted more efficiently. If the billing category was N,M, or A
	the question will not be asked as these codes will be used instead
	of a zip to allow searching the address file, and listing labels
	by these parameters.
 
	LINE 2 *
	LINE 3 *       (if the address has a zip code it should not be
	LINE 4 *        reentered except in the case of ARPA, ONR, AUTO)
	LINE 5 *
	The acceptable responses are:
		<address line>	the address lines as you expect them to 
				appear on all correspondence.
		<cr>		if the line is to be left blank, or there
				are no more lines to the address.
	Each entry is allowed to have up to 5 lines in its mailing
	address including the "name" line.  These lines may have up
	to 35 characters each.
 
	The program will then exit to the mod function, display the entry
as it was entered, and allow you to make any change, except for the hash
code which the program has computed.  Once the entry has been approved as
correct, the processing will return to ADD, and ask for another name line.
This will continue until you responding to the names request with a <cr>.
USER'S MANUAL							PAGE 12
II.5.1.2 OPERATING THE MOD FUNCTION
 
	This function can operate in two modes.  First if it is 
called from the ADD function it will merely display your entry ,
and allow you to make any changes you desire except the hash code.
This mode will exit to ADD when you have approved the entry. The
second mode will allow you to modify any currently existing entry.
This will operate in a loop until instructed to exit to the ADD/MOD
processing level.  
	The processing proceds as follows:
 
	HASH CODE OR <cr> TO EXIT *
	The acceptable responses are:
		LLLLL<cr>	the hash code of the entry to modify.
				If you make an error, and the hash code
				cannot be found you will begin a search.
		<cr>		to exit the mod processing and return to
				the ADD/MOD level.
	The program will then display the entry and ask what action you
	request as follows:
 
	THE ENTRY YOU WISH TO CHANGE IS:
	  LINE	1. <address file coded accounting data>
	  LINE  2. <the entry name line>
	  LINE  3. <address line>
	  LINE  4. <address line>
	  LINE  5. <address line>
	  LINE  6. <address line>
	UPdate,ABort,OR LINE NUMBER TO CHANGE *
	The acceptable responses are:
		UPdata<cr>	if the entry is correct.
		ABort<cr>	if you do not wish to make any changes
				to the file with the displayed entry.
				In ADD mode the entry will be discarded.
		######<cr>	To modify the address input any or all
				of the line numbers you wish to change.
	If there are lines to change the program will ask for them one 
	at a time as follows:
 
	CHANGES*<the requested line will be output in the line editor>
 	The acceptable response is:
		<edit>		use the line editor to make any changes
				to the line.
	Once all of the lines have been input the processing will again
	display the entry and ask for changes.
 
	The program will recalculate the hash if there is a change to the 
zip code, or the country.  At this time the order file wil also be checked,
and the hash code changed if there are any open orders under the old hash.
If it is necessary to add another page to the address file, you will be
informed that a new page is being added, and the program will make the change. 
Once the modification has been terminated (by UP, or AB) the processing 
will return either to ADD or ask for another HASH.
USER'S MANUAL							PAGE 13
II.5.2 OPERATING THE DEL FUNCTION
	
	The delete function will operate in a loop allowing the operator
to input the hash code, and approve the entry for all of those to
be deleted.  Once all of those to be deleted have been input, the 
operator instructs the program to exit, and only then will the 
actual deletions be made. The program porceeds as follows:
	
	HASH CODE TO DELETE OR <cr> TO EXIT *
	The acceptable responses are:
		LLLLL<cr>	the hash code of the entry to modify.
				If you make an error, and the hash code
				cannot be found you will begin a search.
		<cr>		to exit the mod processing and perform
				the actual file deletions then return
				control to LISTUP.
	The program will then display the name of the entry found and 
	ask if it is correct as follows:
 
	CAN I DELETE <name> (Yes OR No) *
	The acceptable responses are:
		Yes<cr>		will cause the entry to be placed on the
				delete list.
		No<cr>		will ask for another hash code.
 
	Once you exit the processing there will be a slight delay as
the program calls ETv to do the file deletions.
 
 
 
NOTE TO PROCESSING OF LISTUP CHANGES:
	Changes that are made to the address file itself are made immediately
upon exit of either the ADD/MOD or DEL functions.  At the same time the HASHES
cross-reference file is also updated.
USER'S MANUAL							PAGE 14
II.6 MAILING THE ABSTRACT LIST
 
	The processing related to mailing the abstract list is 
accomplished by MAKEML.  This program is designed to perform the
following functions:
	1. Produce the mailing labels.  A formatted label is output 
	   to a temporary file for each entry in the address file.
	   This file will be called <mon>LAB, where "mon" is the
	   first three letters of the month for the abstract list.
	   The labels can be formatted as either AVERY or CHESHIRE
	   labels, and listed when the printer is set up properly.
	2. Produce the master copy of the order form.  The number
	   of copies is as indicated in the data item DATA.  This
	   form is intended as a mailing cover, and also as a return
	   order form. It will be output to the temporary file INFORM.
	3. Build and update the report data file REPT.DSK.  This is the
	   data necessary to process orders.  
	4. Open the file to receive incoming orders ORDER.DSK.
	5. Provide summaries of the monthly abstract mailing.  This
	   will be output with the order forms in file INFORM.
	The only processing that is not done by this program related to 
the mailing of the abstract list is the printing of the abstracts.
NOTE:  The procedure for listing files is described under system functions.
 
	The program allows the user to specify the month for which he 
wishes to process.  It then opens a report file for that month and allows 
the operator to input the data concerning the reports for that month.  This
processing will continue in a loop until all of the reports have been
added for the session, and the operator signals the program to update
the file.  After the program adds the entries to the file the operator
will be asked if he wishes to mail the list, if so the rest of the
processing will be completed.  If the operator does not wish to mail the
list at this time, then the program will exit, and upon the next
entry the operator can add more entries to the list.   Once the abstract
list has been mailed no more entries should be added.
 
	The MAKEML function is entered by responding to the CSREPT query
as follows:
	CSREPT - what can I do for you? *MAKEml<cr>
	If there is no currently open monthly abstract report file the
	program will respond:

	MAKEML - Enter month *
	The acceptable responses are:
		MONth<cr>	at least the first three letters of the
				month for the abstract list.
		HELP<cr>	for a narritive.
		<cr>		to exit and return control to CSREPT.
	If there is a currently open file:
 
	MAKEML - The MON list is open and will be used. Enter Option *
	The acceptable responses are:
		BUILD<cr>	to add reports to the month's abstract 
				mailing list. 
		MAIL<cr>	to send the mailing list.
		HELP<cr>	for a narrative.
		<cr>		to exit and return control to CSREPT.
	The "MON" will be the first three letters of the month whose
	file is to be used.
USER'S MANUAL							PAGE 15
II.6.1 ADDING AN ABSTRACT LIST REPORT ENTRY
 
	The reports to be included in the current month's mailing
list will be assembled and approved in a loop through interaction
with the user.  Once the entries have all been approved, and the
loop terminated, the report data will be added to the file REPT.DSK
by ETv under program control.  The processing proceeds as follows:
 
	REPORT NUMBER *
	The acceptable responses are:
		STAN-CS-76-###<cr> this is whatever report number 
		AIM-###<cr>	you wish to see on the order form,
				it can be in any format desired.
		<cr>		to exit report file loop, and return
				control th MAKEML.
 
	NUMBER OF HARDCOPIES AVAILABLE *
	The acceptable responses are:
		####<cr>	the number of hard copies available of the
				report.  This will be used to inform you
				if too many are ordered.  You will have a 
				chance to change it at the time that the
				orders are filled.
		NO<cr>		this is to indicate that either the number
				is unavailable, or there are unlimited
				copies available.
 
	PRICE(NN.NN ie 19.76)  $
	The acceptable responses are:
		nN.NN<cr>	the predetermined price of the report.
		COMPute<cr>	to indicate that the price should be
				computed based upon the formula:
				BASE+(number of pages)*PRICE.
		If the compute option s chosen you will be asked:
		NUMBER OF PAGES *
		The acceptable responses are:
			#####<cr>	the number of pages in the report
			<cr>		to abort the compute option, and return
					to the price option.
 
	NUMBER OF MICROFICHE AVAILABLE *
	The acceptable responses are:
		####<cr>	the number of microfiche available of the
				report.  This will be used to inform you
				if too many are ordered.  You will have a 
				chance to change it at the time that the
				orders are filled.
		NO<cr>		this is to indicate that either the number
				is unavailable, or there are unlimited
				copies available.
 
 
	ACCOUNT *
	The acceptable response is:
		<account number> the account number of the individual
				or organization that is sponsoring this
				report.  This will be asked along with the 
				percent of sponsorship until all of the
				sponsors have been input (ie percent=100).
USER'S MANUAL							PAGE 16
 
	PERCENT *
	The acceptable response is:
		##<cr>		the decimal percent of sponsorship
				for the lastest account number entered.
				This can be from 1 to 100.
	If the total percent has not reached 100, you will be informed
	of the current total, and prompted for another account.  The total
	must equal 100, if you error and exceed 100% the program will
	discard the current account, and you will have to reenter it.
	
	Now that the entry has been input it will be displayed, and you
	will have the opportunity to approve it:
 
	THIS IS THE CODED ENTRY:
	<the entry will be listed, see REPT.DSK for format>
	IS IT OK (Yes,No,?) *
	The acceptable responses are:
		Yes<cr>		this will accept the entry ane return
				to ask for another report number.
		No<cr>		this will reject the entry, discard
				it completely, and return to ask for
				another report number.
		?<cr>		this will display the meaning of the
				items of the coded entry so that you
				can verify if it is allright.
 
	This completes the interactive process involved with building
a report entry.  It will continue in this manner until you instruct it 
to exit by responding with a <cr> when asked for a report number.
USER'S MANUAL							PAGE 17
 
II.6.2 MAILING THE ABSTRACT LIST
 
	The abstract list can be initiated either upon entrance to 
MAKEML if the report file already exists, or after entries have been
added to the file.  The necessary response to enter directly from
MAKEML is: MAIL<cr> as described earlier.  In order to mail the list
that has just been updated you will be queried:

	WOULD YOU LIKE TO MAIL THE LIST NOW? (Yes OR No)*
	The acceptable response is:
		Y<cr>		to print the labels, order forms
				and summary.
		N<cr>		to exit MAKEML and return to CSREPT.
		<cr>		to exit MAKEML and return to CSREPT.

	ARE CHESHIRE LABELS TO BE PRINTED (Yes OR No)*
	The acceptable response is:
		Y<cr>		to print the labels in the chashire format.
		N<cr>		to exit print the labels in the AVERY format.

	The program will then proceed for some time without any
operator interface.  It will actually take about 3.5 minutes of 
computer time to produce, sort, and output the labels.  The labels 
will be printed with ten on a page, leaving the eleventh one blank,
this is necessary to allow the printer to keep syncronized. You will
then be informed that they are printed, and the file name.  Next
the order form is produced, and the summary computed.  This will
happen very rapidly.  In order to produce the order form, you will
be asked the order cutoff date as follows:
 
	ENTER THE CUTOFF DATE FOR ORDER FORMS *
	The acceptable response is:
		<date>		the date you wish all orders to be 
				received, in the format you want it printed.
	When the processing is complete control will be automatically
passed back to CSREPT. 
 
NOTE: The method of listing the labels is explained in section II.10.
      
USER'S MANUAL							PAGE 18
II.7 PROCESSING REPORT ORDERS
 
	Once the abstract list has been mailed, the ORDER.DSK file
is ready to receive orders. The processing is actually accomplished
by CMONEY which  also processes the receipt of payments for reports.
In the ORDER mode the program will operate in a loop accepting orders
one at a time until you are ready to exit, at which time control will
be passed back to CSREPT.  The order function is entered as follows:
 
	CSREPT - what can I do for you? *CSORD<cr>
	The program will respond by asking you which month to process:
	ORDER - MONTH *
	The acceptable responses are:
		MONth<cr>	at least the first three letters of the
				month for the abstract list.
		HELP<cr>	for a narrative.
		<cr>		to exit and return control to CSREPT.
	The program will then initialize the processing and enter the loop
	in which the orders are processed. Within this loop you will be asked
	to input the hash code of the person ordering reports, and once the
	the hash has been checked, you will be asked for the reports numbers
	that were ordered. Finally, you will be asked if any money was sent
	with the order, and if so the funds will be added to the account.
	HASH CODE *
	The acceptable responses are:
		HHHHH<cr>	the five character hash code.
		HELP<cr>	for a narrative of options.
		<cr>		will process any orders, and return to CSREPT.
	The hash code will be checked, and if it cannot be found you will
	automatically enter the SEARCH function in the zip mode.
	IS <name> THE CORRECT CUSTOMER? (Y or N)*
	The acceptable responses are:
		Yes<cr>		the payment will be processed.
		No<cr>		you will be asked for another hash code.
	REPORT NUMBERS #
	The acceptable responses are:
		#####<cr>	the order numbers of the reports
				that were ordered.  This is the one
				digit order number as it appears on the
				order form, not the Stanford report number.
				Each number may appear only once.
		HELP<cr>	for a narrative of options.
		<cr>		will cause this order to be flushed, and
				return to the hash code quary.
	Although the program allows each order to request only one copy
	of a report, there is no limit to the number of orders.  This 
	allows someone to order two copies of a report, but the operator
	will have to enter two separate ordes for the same hash code.  
	WAS  ANY MONEY SENT WITH THE ORDER? (Yes or No) *
	The acceptable responses are:
		Yes<cr>		This will cause funds to be processed.
		No<cr>		Or anything but Yes will process another order.
	AMOUNT RECEIVED $
	The acceptable responses are:
		##.##<cr>	the amount of money received.
 		HELP<cr>	for a narrative of options.
		<cr>		will cancel the current customer's processing.
				The order will be kept, but no funds added.
USER'S MANUAL							PAGE 19
II.8 MAILING THE REPORTS
 
	The processing concerned with the mailing of the reports
each month is done by CSMAIL.  This program will produce the
mailing labels, invoices, and processing summary.  In order to
do this the program will proceed in the following manner:
	1. The inventory for the current month will be displayed,
	   and you will have an opportunity to change the number of
	   copies of each report available.
	2. Based upon the number of each report available the program
	   will fill the orders in the order that they were received
	   until each report runs out.
	3. Mailing labels will be printed in zip code order first for
	   all those who have submitted orders, and second for any
	   inactive accounts. These will be output to a file called
	   LABELS for listing at a later time.
	4. Invoices will be printed for all those who submitted orders
	   indicating the reports we are able to send, the amount owed,
	   and the reports that we were not able to send. These will be
	   output to a file called INVOICES for listing.
	5. The processing summary will then be compiled, and added to
	   the INVOICE file.
	6. The accounts will be charged for the reports that were sent
	   based upon their billing category, and the order history
	   will be updated for all members of the address file.

NOTE It is important that the temporary files be deleted after they are
listed as they are very large.
	The CSMAIL function is entered as follows:

	CSREPT - what can I do for you? *CSMAIL<cr>
	The program will respond as follows:
 
	CSMAIL - the <month> order file will be used - OK (Yes or No) *
	The acceptable responses are:
		Yes<cr>		the displayed month will be used.
		No<cr>		you will be asked which month to use.
		<cr>		will return to CSREPT.
		HELP<cr>	will provide a narritive.
	If you answered NO:
 
	ENTER MONTH *
	The acceptable responses are:
		<month><cr>	the month you wish to mail.
		<cr>		will return to CSREPT.
		HELP<cr>	will provide a narritive.
	The stock level will now be displayed, giving the order number,
	report number, and copies available, and you will be asked if
	you wish to change any of the levels as follows:
 	
	The current stock is:
           <each report and copies available will be displayed>
	Are there any changes? (Yes, No,STOCK)*
	The acceptable responses are:
		No<cr>		the displayed levels will be used, and the
				processing will begin.
		Yes<cr>		you will be allowed to make the changes.
		STOCK<cr>	the stock levels will be displayed.
USER'S MANUAL							PAGE 20

	If you answered Yes, you will be allowed to update the inventory
	one report at a time.
 
	Report display number *
	The acceptable response is:
		#<cr>		the display number of the report to change.
 
	Number available *
	The acceptable response is:
		####<cr>	the number of copies available to mail.
	After you have changed the stock you will be asked again if there
	are any changes.  In this manner you can make several changes, and at
	any time display the changed stock level before continuing the process.
 
	Once the stock levels have been approved, the program will run to 
completion with no further assistance from the operaton required unless
a hash code is encountered that is not in the file, at which time the SEARCH
option will be called.  You will be informed that the labels are in file LABELS,
when they are finished processing, and that the invoices are in INVOICES when
they are finished.   

	The processing may take up to four minutes of computer time to
complete all of the tasks if there are orders for everyone in the file, but
500 orders should take about 2 minutes.  Upon completion the program will exit,
and control will be passed back to CSREPT.
USER'S MANUAL							PAGE 21
II.9 PROCESSING PAYMENTS RECEIVED
 
	The processing of payments received for reports is actually
accomplished by CMONEY.  The program runs in a loop asking the hash
code, and amount received.  The money is credited to the proper
account, and if the account is in California the amount of tax is
determined, and added to the OWE item in the data file.
	The PAYMENT function is entered as follows:

	CSREPT - what can I do for you? *CSRECD<cr>
	The program will respond as follows:
 
	HASH CODE *
	The acceptable responses are:
		HHHHH<cr>	the five character hash code.
		HELP<cr>	for a narrative of options.
		<cr>		will process all accounts received,
			        and return to CSREPT.
	The hash code will be checked, and if it cannot be found you will
	automatically enter the SEARCH function in the zip mode.
 
	IS <name> THE CORRECT CUSTOMER? (Y or N)*
	The acceptable responses are:
		Yes<cr>		the payment will be processed.
		No<cr>		you will be asked for another hash code.

	AMOUNT RECEIVED $
	The acceptable responses are:
		##.##<cr>	the amount of money received.
 		HELP<cr>	for a narrative of options.
		<cr>		will cancel the current customer's processing.
 
	This processsing will continue to ask for payments as described
above until instructed to exit by responding with a <cr> to the hash query.
At this time the file updates will be made, and control will be passed 
back to CSREPT.
USER'S MANUAL							PAGE 22
II.10 RELATED SYSTEM FUNCTIONS 
 
	Although it is not necessary to know how to use the operating
system, or the text editing system in order to opeate the REPORT
system, there are several functions that may be useful.  For a more
complete explanation of these functions see:
 
	1. Martin Frost, "Monitor Command Manual", Stanford Artifical
	   Intellirence Labratory, Operating Note 54.5, January 1976.
	2. Art Samuel, The ETv manual, E.ALS[UP,DOC].
  
	If at any time you would like to learn about one of the functions
of the monitor system, you can make use of the help function.  In order to
do this simply type: HELP<cr> from the monitor level (the "." prompt
indicates that you are at the monitor level).  This will display all
of the subjects for which help is available.
 
II.10.1 LISTING A FILE
 
	It will be necessay to list many of the temporary output files
on either the line printer, or the Xerox Grahpics Printer (XGP).  As
a general rule you will want to use the XGP for all listings except
labels which must be listed on the line printer.
 
	1. Listing on the LINE PRINTER (FROST, pg 81). In order to
		list a file on the line printer simply type:

		SPool <file name><cr>
		This should be typed from the monitor level. 

	2. Listing of labels is done on the line printer. You must
		mount the paper, or labels on the printer so that the
		printing will start on the first line all the way to 
		the right (use red guide marks in both cases). Before
		mounting the paper assign the printer to your job:

		ASSIGN LPT<cr>
			Then list the labels as follows:
		COPY LPT:←<file name>(2:200)/EXTRA=0<cr>
			Finally deassign the printer when the paper is readjusted:
		DEASSIGN LPT<cr>
 
	2. Listing on the XGP (FROST, pg 84).  In order to list
		a file on the XGP simply type:
 
		XSpool <file name><cr>
		This should be typed from the monitor level.  
 
	Should the listing be aborted before it is finished, or you
	wish to list only part of the file this can be done by
	specifying the pages to list as follows:
 
		XSpool <file name>(1,4,6:11)<cr>
		SPool <file name>(1,4,6:11)<cr>
		Which would list pages, 1,4, and 6 thru 11.
 
	If this is a labels file, or any file that has only one page,
	simply determine at which line the listing was stopped, and insert 
	a page mark using ETv and restart on the new page.
USER'S MANUAL							PAGE 23
II.10.2	DISPLAYING/EDITING A FILE
samial
	ETV is a display oriented text editor designed for the 
Stanford display terminals.  It is highly desirable that you 
become familiar with its basic uses before attempting to use
it to display or edit any of the files of the REPORT system so
as to avoid accidently altering any of the permanent files in
an unintended manner.
	In order to learn ETV there is a file that you can use
as a self-teaching aid.  To gain access to this simply type
HELP ETEACH from the monitor level.  This will copy the TEACH
file into your project area, and open the file for you to begin
learning the editing functions.
 
	The basic functions you will need to know are to
display a file so that it can be checked, how to delete a file
that is no longer necessary, and how to modify a file:
 
	1.  In order to DISPLAY  a file you will need to know
	    how to enter it, how to change pages, and how to
	    exit.  To enter a file from the monitor level:
 
	    ETv <file name>/R  
	    This will open the file in the read only mode to the
	    directory page if one exists.  If you are asked to
	    reformat the file simply type "Y", and the directory
	    will be built.  In order to move from page to page
	    simply type the page number while holding down the
	    "CONTROL" key. In order to move down the page just
	    push the "FORM" key.  Finally, to exit the file,
   	    type "E" while holding down the "CONTROL" key.
 
	2.  To delete a file all that is necessary is to type:
 
	    DELete <file name><cr>
	    This will cause the entire file to be deleted.  Be
	    sure to delete the temporary files once they have been
	    listed, as they are typically very large.
 
	3.  The functions needed to edit the file are rather involved, and
	    it is suggusted that you either complete the TEACH file
	    before attempting to edit, or ask someone who knows the how
	    to use the text editor to do it for you.
 
IMPORTANT:  The files used by the REPORT system are critical to the
proper system operation, therefore, it is important that they be maintained
in the correct format.  If there is any question as to the file integrity
consult an expert, and possibly have them reupdated from a system tape
that you know is good.
USER'S MANUAL							PAGE 24
II.10.3 RESERVING SERVICE LEVEL
	In order to insure that the time spent using the REPORT system
is productive, you will find it helpful to reserve computer service
level several days in advance.  For this purpose you will need to acquire
some "bams" which allow you to reserve system service level so that
no more then the your number of bams worth are in reserve at any one time.
The following procedure is an excerpt from the RSL manual explaining
how to reserve service (RSL.JHS[UP,DOC]), for further explaination
see FROST pg 118.

		HOW TO RESERVE SERVICE LEVEL:

	Give the monitor level command "RSL".   This  runs  a  csp
program  called  RSL  which  will  receive  and  sometimes grant your
requests for service  level reservations,  and  will  tell  you  such
information as how much SL is available when.

	RSL will prompt you with an asterisk ("*") when it's ready to
accept commands.   Command  format  is  discussed  in  detail  below.
Commands are RESERVE,CALENDAR,AVAILABLE,DISPLAY,MAINTENANCE,and HELP.

	For  example, to  reserve  15%  sl  at  1400  on  the 31st of
December, any of the following command strings will serve:
	RESERVE 15 SL AT 1400 HOURS ON 31-DEC
	r 15 on 31 decemb at 2 p.m.
	RE 2 PM ON 31 DECEMBER 15
	R 15 14 31 12
	If  you  wish  to change a service level reservation, just do
another reservation for the new desired amount.  Releasing a  service
level reservation may be done by "reserving" 0% SL.

			IMPORTANT!

	When  you  are  through  making reservations, you should exit
from RSL by typing "E" (just like stopgap).  If you exit  instead  by
typing ↑C, then there is a possibility that your reservations may get
"lost". The "E" command causes reservations to be  written  out  onto
the disk.
DATA FILES							PAGE 25
			III. DATA FILES
	
	The REPORT system is basically a series of programs whose 
function it is to build, update and maintain a series of data files.
For this reason the permanent data files are critical to the program
operation.  This section describes the structure and organization
of each of the files.  A summary of the files is provided in Section I.
 
III.1 THE ADDRESS FILE
 
	The address file is largest, and most critical of the files
used by the REPORT system.  It is called ADDFIL.DSK, and contains all
of the addresses and accounting data for every customer.  It is organ-
ized into pages with ten customers on a page in random order.  Each
customer is allowed six lines, five for the address, and one for the
coded data.  At the top of each page is a list of the hash codes
for each customer on that page.  This header line will also appear
of the directory page, which is used by the CSREPT program to build
the HASHES file that is the cross-index into the address file.
 
	1. Address entry format:
             *CXXXXX|MMMMMMMMMMMM#HHHHH$000.00S
             <address line 1 - name>
             <address line 2 > 
             <address line 3 > 
             <address line 4 > 
             <address line 5 >

	2. The code line format:
             *CXXXXX|MMMMMMMMMMMM#HHHHH$000.00S
	     ↓↓↓     ↓            ↓     ↓     |Sign, if "-" the account has credit
	     ↓↓↓     ↓            ↓     ↓     |      if " " the account is debit
             ↓↓↓     ↓            ↓     |The credit balance.
             ↓↓↓     ↓            |The hash code.
             ↓↓↓     |12 digits to indicate the number of reports ordered in the 
             ↓↓↓     |last year, used to find inactive customers.
             ↓↓|The zip code, or country (or ORNXX,DARPA,AUTOM).
             ↓|The billing category.
	     |This is the character used to indicate the start of an address,
	     |and it is used in the processing for that purpose.   
 	This line has 34 characters, and should not be changed from the
 	above format, as that is what is used in much of the computation.
 
	3. The header line format:
	     *857FA,8600C,850JG,857RE,857EN,857SF,913SJ,900AP,943SG,#####,
 
	The line will always have 61 characters.  If there are less then
	ten addresses on the page the line will be filled out by "#####"
	hash codes that indicate to LISTUP to put additions on that page
	before adding new pages to the file.
	The line will always end with a "," except for the last page which
	will end with a "/" to indicate to the program that this is the 
	last page.
	FEATURE:  The line has 61 characters, and the full page has 61
		  lines, the page is organized in the order of the hashes
		  in the header line.  This allows the program to determine 
		  which line an address starts on by the number of spaces
		  over the hash is in the header line.
DATA FILES							PAGE 26
  
	4. The HASH CODE is formed by using the first three
	   characters of the zip code for US addressees, or 
	   the first three letters of the country for foreign
	   addresses.  This is concatenated with two letters
	   picked from the first and second thirds of the name
	   line of the address.  Finally a check is made to
	   see if the candidate hash already exists, if so
	   the last letter is changed and reconflicted.  This
	   continues until a unique hash is formed.  Actually
	   all combinations of the last two letters can be tried
	   before the program gives up (676 in the same zip region
	   or country).
	   FEATURE: This allows the ordered hash codes to be 
		    searched easily by country or zip code. 
 
III.2 THE HASH CODE CROSS-REFERENCE FILE
 
	The HASHES file is built from the directory page of the
address file.  It contains one entry for each hash code with the page
and record number indicates where the address can be found in the ADDFIL.DSK.
The file is sorted in alpha-numeric order. It file begins with the
word HASH to be used by the program, followed by the number of entries,
and finally, all of the entries, one per line as follows:

		HASH
		1380
		AFRSA0028300095
		AFRJG0029400099
		AFRFW0032100108
		AFRRB0023500078
 
	The entry format:
		HHHHHRRRRRPPPPP
		↓    ↓    |The page number, 5 characters.
		↓    |The record number, 5 characters.
		|The hash code.
 
	The file is built by SHELST using the ADDFIL.DSK directory page.
This process is quite long, and requires about 3 minutes of computer
time.  For this reason the file is permanent.  It is read in at the
start of each run, updated in by LISTUP if any changes are made.
	If at any time there is a problem with the hash indexing
it can be rebuilt automatically if you simply delete the file and 
create an empty file called "HASHES".
DATA FILES							PAGE 27
III.3 THE DATA FILE
 
	There are two pages of importance in the data file.  Page
two contains the eight variable data items, and page 3 contains the
format of the invoice.

	The data items are listed below:
DATA 7
1. BASE=1.00        THIS IS THE BASE PRICE FOR A DOCUMENT
2. PRICE=0.03       THIS IN THE COST PER PAGE OF A DOCUMENT
3. TAX=60           THIS IS IN TENTHS OF CENTS (IE 65 IS 6.5% OR $0.065)
4. COPIES=4         THIS IS THE NUMBER OF MASTER COPIES OF ORDER FORM AND SUMMARY
5. LINELB=6         THIS IS THE NUMBER OF LINES ON A LABEL (INCLUDING BETWEEN TWO)
6. LINEST=1         THIS IS THE NUMBER FROM THE TOP TO THE FIRST LINE
7. NAME=VICKI L FAHRENHOLZ             NAME OF PERSON TO RECEIVE ORDERS
8. OWE=0.0          THIS IS THE TAX OWED, COMPUTED BY CSMONEY, INITIALIZED BY YOU
 
	The "DATA 7" indicates the number of entries on the page.  Each
item hash a unique number that is used to locate it, it then has the name
of the data followed by "=" which is used to locate the value.
 
	The invoice contains all of the verbiage associated with the 
invoice, but there are "*" characters wherever the program will have
to insert data.  It is critical that these characters be left in place
even if the verbiage is changed.  There are actually three paragraphs
indicated by the "|".  The invoice has a preamble that is always
included, and it is folowed by the three paragraphs:
		1. This paragraph contains the information
		   concerning reports that are being forwarded.(optional)
		2. This paragraph contains the information for reports
		   that are out of stock.(optional)
		3. This is the invoice.
 
	The file is maintained by the DATA function of CSREPT.
 
III.4 THE REPORT FILE
 
	The report file called REPT.DSK contains the coded data 
necessary to process the monthly orders for reports.  The file
has twelve pages, one for each month.  Each page has a header
line that contains the month, number of entries, and number of
reports.  After the header the page contains the report entries
one per line. 
 
	1. The header format is:
	   
	   MON ENTRIES=##### REPORTS=#
	    ↓ ↓        ↓             |The character to indicate the number
	    ↓ ↓	       ↓	     |of reports (this is the highest number
	    ↓ ↓	       ↓	     |and counts each report as two- one for
	    ↓ ↓	       ↓	     |hardcopy, and one for microfiche.)
	    ↓ ↓	       |The number of report entries.
	    ↓ |If this is a "*" it indicates that this is the open report file.
	    |The month this page is for.
 
	This line will appear on the directory page, and is used for the 
	processing.
DATA FILES		 					PAGE 28
 
	2. The entry format is:

*STAN-76-CS-144|H,NNNN,0000,PP.PP|M,NNNN,0000|AAAA.%%|Y
   	    ↓   ↓ ↓       ↓    ↓  ↓   ↓   ↓    ↓       |Y=0 FOR NEITHER.
   	    ↓   ↓ ↓       ↓    ↓  ↓   ↓   ↓    ↓       |Y=1 ONR REPORT.
	    ↓   ↓ ↓       ↓    ↓  ↓   ↓   ↓    ↓       |Y=2 ARPA REPORT.
 	    ↓   ↓ ↓       ↓    ↓  ↓   ↓   ↓    ↓       |Y=3 BOTH ARPA&ONR.
 	    ↓   ↓ ↓       ↓    ↓  ↓   ↓   ↓    ACCOUNT # AND PERCENT-1.
 	    ↓   ↓ ↓       ↓    ↓  ↓   ↓   NUMBER FICHE ORDERED (ACCOUNTING).
 	    ↓   ↓ ↓       ↓    ↓  ↓   NUMBER OF MICROFICHE.
 	    ↓   ↓ ↓       ↓    ↓  ↓   NONO NOT AVAILABLE OR UNLIMITED.
 	    ↓   ↓ ↓       ↓    ↓  COMPUTED ORDER NUMBER FOR MICROFICHE.
 	    ↓   ↓ ↓       ↓    PRICE PER HARDCOPY.
     	    ↓   ↓ ↓       NUMBER OF HARDCOPIES ORDERED.
 	    ↓   ↓ NUMBER HARD COPIES AVAILABLE.
 	    ↓   COMPUTED HARDCOPY ORDER NUMBER.
	    CS REPORT NUMBER WITH OPTIONAL EXTENSION.
 
	This entry is built by MAKEML, and the number of reports ordered
is updated by CMONEY in the ORDER function.  The data is used to process
and fill orders.
 
III.5 THE ORDER FILE
 
	The order file called ORDER.DSK contains the coded ordering
information in the order that it was received.  The order file
has twelve pages, one for each month.  Each page has a header
line that contains the month, number orders, and the number of
reports.  After the header the page contains the order entries
one per line. 
 
	1. The header format is:
	   MON ORDERS=##### REPORTS=#
	    ↓ ↓        ↓             |The character to indicate the number
	    ↓ ↓	       ↓	     |of reports (this is the highest number
	    ↓ ↓	       ↓	     |and counts each report as two- one for
	    ↓ ↓	       ↓	     |hardcopy, and one for microfiche.)
	    ↓ ↓	       |The number of orders in the file.
	    ↓ |If this is a "*" it indicates that this is the open report file.
	    |The month this page is for.
 
	This line will appear on the directory page, and is used for the 
	processing.
	  
	2. The format of the entry is just the hash code followed by the
	   report order numbers for the repports that were ordered.
 
		HHHHH#####
 
	The order numbers are the one digit numbers from the REPT.DSK
	report entry, not the Stanford number.
 
	This file is built by CSMONEY in the ORDER function, and the
entries are deleted by CSMAIL when the orders are mailed.
DATA FILES							PAGE 29
III.6 HISTORICAL REPORT FILE
 
	The report file called REPTFL.DSK contains the coded data 
necessary to process the back orders for reports.  The file
has one page which starts with the number on entries in the file
followed by the coded report information in the same format as it was
in the REPT.DSK.  
	The file is added to by CSMAIL each time a report mailing is
done, and is updated to reflect proper inventory levels by SENDER.


III.7 THE TEMPORARY FILES
 
	There are four temporary files that are used for listing
purposes, and they should be deletes as soon as they have been listed
and checked, because they are very large.  There are two types of files,
the label files which contain labels and should be listed on the 
line printer, and the information files that should be listed
on the XGP.
	The files are:
 
	1. INFORM: Produced by MAKEML, it containes one page for 
		   each copy of the order form requested by the
	   	   data item "COPIES", and a final page of process
		   summary data.
 
	2. <MON>LAB: Produced by MAKEML, this file contains a label
		     for each entry in the address file.  There is 
		     only one page to this file.
 
	3. INVOIC:   Produced by CSMAIL this fle contains an invoice 
		     for everyone that submitted an order during the month
		     that was processed, one per page, and a final 
		     page of processing summary data.
 
 	4. LABELS  This file contains the mailing labels for all those
		   who submitted an order, followed by a label for all
		   those whose account has been inactive for the last
		   12 order periods.  There is only one page to this file.
		   This file is built by CSMAIL.
MAINTENANCE MANUAL						PAGE 30
 
			IV. MAINTENANCE MANUAL
 
	
IV.1 INTRODUCTION
 
	The design of the REPORT system is basically modular in form.
This allows problems to be isolated to a particular program and
procedure quite easily.  Once a problem has been isolated, it is
necessary to determine the exact cause.  To help determine the 
reason for a "bug" this section will discuss the program formats
with particular emphasis on the data structures utilized at each level.
This should also be of help when adding modifications to the system.
 
	The most probable cause of a system error is related to
the data files.  If there is a problem in the running of one of
the programs try to determine which files were being used when
the problem occurred, and check them to insure that they are in the 
proper format, as described in section III.  The most likely file
problems are that the file may be missing, or in improper format.
One cause of this is that the operator may have aborted the run
(↓C) during file updating.
 
 
IV.2 SOME HACKS
 
	In order to check the format of the files all that is necessary 
is to make a visual check of the format as described in the last
section.  If the file is bad it can be reloaded from a system tape
that was taken before the problem occurred, and the changes that
were made since that time reaccomplished.  Of special interest
is the address file.
 
     1. Address file checking (ADDFIL.DSK).  The address file is
	the largest, and most critical of the files.  If an error
	occurs on a particular entry, determine the hash using
	BAIL as described below, and check its format in the 
	file.  Another probable error would occur if the entry is in 
	the file, but the program cannot find it, then its time
	to suspect that the HASHES file is in error.  If you wish to 
	check the format of the entire file:
		a. Enter SEARCH in the name mode.
		b. Don't type in a name just hit <cr>, this
		   will begin displaying the file 23 names at a
		   time.  If the format is right you should be 
		   able to progress through the entire file.
 
     2. HASHES cross-reference list.  This is a critical index
	used by all of the programs to access the address file.
	If it is bad, or missing, simply have the program rebuild
	it as described in section III.
 
     3. The other permanent files to be maintained are:
		REPT.DSK  Problems would appear in CMONEY
			  or CSMAIL concerning report data.
			  A visual check should find the error.
		ORDER.DSK Problems would appear in CMONEY if the
			  file is missing, or CSMAIL if it is in error.
		LBDATA	  Problems can be checked in DATA.
MAINTENANCE MANUAL						PAGE 31
 
	The simplest method of determining the reason for a
program error is to use BAIL, the interactive debugger.  In
order to do this, you must first recompile the programs 
with the debugger.  This is done as follows:
	TRY/COM CSREPT,LISTUP,MAKEML,CMONEY,CSMAIL<cr>
 
	This will take about 60 seconds of computer time, and
will start the system.  Next you should run to where the error
occurred and start the debugger by hitting the "CALL" button, and
typing:  DD<cr>.  The debugger will initialize itself, and allow
you to diagnose your problem. You may have to set the lexical
level to "1" to view some of the data.
 
	For testing purposes it is probably advisable to use
a smaller address file.  In order to do this:
 
	1.Rename the files:  RENAME FOO←ADDFIL.DSK<cr>
			     RENAME BAR←HASHES<cr>
	2.Copy a few pages of the address file:
			     COPY ADDFIL.DSK←FOO(1:5)<cr>
	3.Create an empty hash file:
			     CET HASHES<cr>
	4.Perform the tests.
	5.Restore the correct files:
			     RENAME ADDFIL.DSK←FOO<cr>
			     RENAME HASHES←BAR<cr>
 
 
IV.3 PROGRAM STRUCTURE
 
	To rapidly locate the cause of an error in the REPORT system
it s necessary to be familiar with the structure of the programs, the
functions performed by each programmer procedure, and the data structures
used in each.  This section will attempt to provide some insight into
these design details.  For further clarification see the sail code
program listings which are highly commented.
 
	The five programs are written in SAIL for the DEC KL10 computer
system.  They are designed so that the program functions are local to 
the particular program and procedure.  The only major exception to this
is in the processing of requests to locate entries in the address file,
which is accomplished by the procedures BILOOK AND FINDER in CSREPT.
Much of the data structures used by this system are global to all of the
programs, and are declared "external" or "internal".
MAINTENANCE MANUAL						PAGE 32
IV.3.1 CSREPT
 
	This program initializes the data channels, daclares
all of the global data, reads in the HASHES table and starts the 
system.  The entire system is run from within the procedure PRESID.
CSREPT also includes the SHELST, BILOOK, and  FINDER procedures
that are used by the all of the programs as utilities.
	All of the programs are declared as EXTERNAL to CSREPT so
that they can be called as procedures from within the PRESID procedure.
Except for the "programs" which are actually internal procedures, and
PRESID, most of the procedures in the entire system are declared as
"SIMPLE" in order to simplify the program operation.
 
PROC	FUNCTION			DATA STRUCTURES
____________________________________________________________________________________
CSREPT| At startup it reads in the    |
      | data, opens the data channels,|
      | and calls PRESID to run the   |
      | the system.		      |
PRESID| Reads in or recomputes the    |NUMBER the number of entries in ADDFIL.DSK
      | hash table, and calls the     |HASHTB the in core ordered hash table.
      | rest of the functions as they |
      | are requested.                |
SHELST| Performs an alpha/numeric     |Uses NUMBER and HASHES to perform the
      | Shell sort of the hashes file.|sort.  
      | Also used by CSMAIL to sort   |
      | the mailing data.	      | 
BILOOK| This is a very important      |Uses the HASH that was requested to search
      | procedure used to find the    |the HASHTB.
      | location of an entry in the   |Returns UP if true then the hash could'nt be
      | address file (binary sort of  |located, REC the record of the entry, PG the
      | the HASHTB).		      |page number of the entry, NOW the number
      |   			      |of the entry in the HASHTB.
FINDER| Used to find the address entry|Uses HASH, REC to find the entry in the
      | given the record number.      |ADDFIL.DSK
      |   			      |Returns the 6 line address in ADDRESS[0:5]
SEARCH| This procedure will search the|HASH	Calls FINDER and BILOOK to execute
      | ADDFIL.DSK by either the HASH,|		the search.
      | ZIP, or NAME upon request or  |ZIP	Calls FINDER and BILOOK with some
      | when called by a program due  |  	changes to how BILOOK operates
      | to a bad hash code request.   |  	indicated by the flag  SHAKE.
      |   			      |NAME	Direct serial string search of the
      |   			      |  	name lines in ADDFIL.DSK
DATA  |	Allows operator modification  |Uses, and modifies the 8 data items, BASE,
      |	of the 8 data items.	      |PRICER,TAX,COPIES,LINELB,LINEST,PAT,OWE
      |				      |which are global to the system.  Also
      |				      |updates the permanent file LBDATA.
HELPER|	This is a case statement which|The item HELP determines which type 
      |	provides the help.	      |to print out.
____________________________________________________________________________________
MAINTENANCE MANUAL						PAGE 33
 
	The GLOBAL data items used throughout the entire system are declared
by CSREPT.  These are:
 
DATA DECLARATION     EXPLANATION
____________________________________________________________________________________
  -STRING ARRAY-|
HASHTB[1:NUMBER]|The in-core string array version of the HASHES file.
ADDRESS[0:5]	|Used to pass address entries (6 line address for 1 entry in file).
   -STRINGS-	|
TYPEIN		|The string used to receive operator requests throughout REPORT.
PAGE		|The string used to read in a page of a file throughout the system.
LINE		|The string used to scan one line from a page (PAGE) throughout.
HASH		|The string used to hold the hash code being processed throughout.
HEADER		|The string used to hold the header line from the page (PAGE) of
		|   the ADDFIL.DSK, REPT.DSK, or ORDER.DSK when they are being read.
   -BOOLEAN¬	|
UP		|Flag, if True the hash is not in the HASHTB.
SWITCH		|Flag, if true CMONEY goes into ORDER mode, if false goes to RECD.
SHAKE		|Flag, if true then FINDER uses only 3 characters of the hash code
		|      to return an entry, this is for the zip code search.
   -INTEGER-	|
REC		|The record number of the requested entry in the address file.
PG 		|The page number on which to find an address in the address file.
JMP		|The line number on which to find an address in the address file.
NOW		|The entry number of the hash in the HASHTB.
NUMBER		|The number of entries in the address file.  Computed by CSREPT
		|    by the length of the directory page.
BRCHAR		|The octal number to indicate what stopped the last INPUT or SCAN.
C1,C2,C3,C4,C5	|The IO channels.
PL		|The psyedo TTY channel.
COUNT,DSKCT	|The number of characters accepted from the channel.
 ___________________________________________________________________________________
 
	Not included in the above list are the data items (LBDATA) which were 
explained in an earlier section.  
	Throughout the program heavy use is made of the MACRO capability of 
SAIL.  This enables a series of repetative functions to be called by using
a pneumonic which will be expanded at compile time.  A few of the more
highly used macroes are explained here:
	
 	TTIN	This will input a response from the TTY and store it in TYPEIN.
	PGIN	This will input a page from a file and store it in PAGE.
	SCIN	This will remove a line from a page and store it in LINE.
	CRLF	This will insert a carrage return, line feed in an output.
	PRT	This will print to the TTY after going to a new line.
	FILLER	This will initialize the address file for input to a REC.
	ETVIN	This will log in a PTY job.
	ETVOUT  This will kill the PTY job.
	INSERT  This will ues ETv to insert a line in a file thru the PTY.
MAINTENANCE MANUAL						PAGE 34
IV.3.2 LISTUP
 
	The sole purpose of the LISTUP function is to perform all of
the required changes to the address file. This function is necessary 
to assure that the file is kept in the proper format for processing
by the rest of the system. In addition to the normal formatting
function LISTUP will also compute new hash codes, assure that they unique,
and maintain the hash code cross-reference file(HASHES) and table(HASHTB).
The entire program operation is controlled form within a loop by the
procedure called THEBOS.
 
PROC	 FUNCTION			 DATA STRUCTURES
____________________________________________________________________________________
THEBOS	|Control the processing,by      |CHANGE: True if files was changed in
	|calling procedures upon user	|	the last request.
	|request.			|TESTIT: Flag to indicate ADD is in progress
	|				|HELP: Tells HELPAD what type of help.
CHAG	|Controls the add and mod     	|CGS: number of changes made.
	|functions,and calls ETV to	|HEADS: modified address file page header.
	|process the file changes when	|JMPG: line, and page numbers of changes.
	|all of the add/mods have been	|LINES: The new or modified address entries.
	|input.				|
ADDNEW	|Interactively builds up the	|Builds the new entry in ADDRESS[0:5].
	|new address entry, and hash	|Passes hash="#####" to tell MODIFY that
	|code, then calls MODIFY.	|it needs to search for a blank entry.
	|				|Passes the zip code in ZIP.
MODIFY	|Will display the requested	|Processes the entry in ADDRESS[0:5].
	|entry, and allow any changes	|HASH is the hash code it will try to
	|except hash code.  Will change	|match in the HASHTB.
	|the hash if the zip or country	|
	|change.			|
ETV	|Will log in a PTY job, and	|Uses the data passed from CHAG.
	|make all of the add/mod changes|
	|at once using the ETv editor	|
DELETE	|Receives and verifies all of   |
	|the delete requests, then does	|DELS: contains the line number, page
	|the actual delete operations	|	and new page header for all those
	|using ETv.			|	to be deleted.
	|				|DEL: the number of deletes.
HASHER	|Is the procedure called by	|Uses BILOOK to check the candidate in
	|ADDNEW and MODIFY to assure	|HASH.  Progresses through II in mod
	|that all hash codes are unique.|26, and JJ in mod 26, but once per II.
HELPAD	|This is a case statement used	|HELP the integer to indicate which
	|to provide the help.		|type of help to print.
	|				|
 ___________________________________________________________________________________
 
MAINTENANCE MANUAL						PAGE 35
IV.3.3 MAKEML
 
	MAKEML is composed of two main functions. The build function
to add entries to the report file (REPT.DSK), this is performed by
the BUILD procedure.  Second, the make function that makes the order
forms, and the mailing labels, this is performed by the MAKE procedure.
MAKEML uses the ADDFIL.DSK to gather the address information, builds:
   	 REPT.DSK: file with the report entries.
	 <MON>LAB: with the mailing labels in zip code order.
	 INFORM:   with the order form master, and the processing summary.
	The program also initializes the ORDER.DSK file for the proper
month to receive report orders.
 
 
PROC	 FUNCTION			 DATA STRUCTURES
____________________________________________________________________________________
entry	|Upon MAKEML entry the program	|MONTH: the three character month (ie jan).
	|determines if you want to 	|
	|start processing with make or	|
	|build, and the month.		|
BUILD	|nteractively builds the report	|RECNUM: record of month in REPT.DSK.
	|entries to add to the file,then|PAGER: page of month in REPT.DSK.
	|updates the REPT.DSK and   	|EXISTING: number of existing reports in file.
	|ORDER.DSK files all at once	|ENT: report entry being processed.
	|just before exiting.		|ENTREE: holds new approved report entries
MAKE	|Is a procedure used to call the|      until they sre added to the file.
	|two procedures LABELS and FORM	|Declares the data items that are used
	|to process the output.		|   to count categories of addresses.
LABELS	|Outputs the mailing labels to	|ADDER: Holes the labels until there are
	|the file <mon>LAB.		|at least 8000 characters then dumps them
	|Processes through every entry	|to the file.
	|in the address list.		|Uses most of the global items in a tight
	|				|processing loop to build an entry in
	|				|ADDRESS[0:5] to add to ADDER.
FORM	|First produces the order form	|COPIES: the number of master order forms.
	|then the processing summary.	|Uses LINE to build a line, then adds it to
	|Outputs then to INFORM.	|LETTER and finally outputs to the file.
	|				|The summary does same LINE→LETTER→INFORM,
	|				|but formats report, account, address file
	|				|summaries.
____________________________________________________________________________________
 
	The processing of the MAKEML function is basically in-line, with
no interactive loops being executed.  The majority of the compute time
is spent in the LABELS procedure, within the "FOR" loop that produces the
labels in zip code order. 
 
NOTE It is suggested that when the labels are made, once an order cycle,
15 to 20% service level be reserved for two hours in the early morning.
MAINTENANCE MANUAL						PAGE 36
IV.3.4 CMONEY
 
	The CMONEY program can run in one of two possible modes.
The ORDER mode (SWITCH=TRUE) in which orders are received, the
ORDER.DSK file updated, and funds credited to the individual
accounts if sent with the order.  The RECD mode (SWITCH=FALSE)
in which funds are credited to the individual accounts.  In both modes
the California tax is computed if applicable.
	The processing in either mode occurs in a loop, and the files
are not actually updated until the loop is terminated.
 
 
PROC	 FUNCTION			 DATA STRUCTURES
____________________________________________________________________________________
entry	|The mode is determined.  If 	|SWITCH: to determine the mode.
	|order, the correct month is 	|Searches the ORDER file for the correct
	|found, and procedure ORDER is	|month (MONTH).
	|called control the processing.	|
	|If RECD the payment loop is	|
	|entered.			|
HASHCK	|Is called in the loop of both	|HASH: For the hash to check.
	|modes to receive and check the	|Calls BILOOK  to check, SEARCH if the
	|HASH code.			|hash is not in HASHTB, and FINDER to
	|				|return the address info ADDRESS[0:5].
ORDER	|Controls the order loop.  Calls|BUILDER: Holds the orders input until
	|HASHCK to receive the hash,	|they are ready to add to the file upon exit.
   	|receives the orders in a loop,	|COUNTER: The number of orders input.
	|calls amount to receive the	|COUNT: The number of oders already.
	|payment, and finally adds the	|NUMM: The number of reports.
	|orders to the file upon exit.	|
	|Updates the order count in     |
	|REPT.DSK			|
AMOUNT	|This is used to receive and	|OWETAX: The amount of tax comuted.
	|verify the funds received.	|LIKENUM: Number of accounts processed.
	|				|LIKEHASH[*]: saves the hash, address file
	|				|page and record number, and amount.
ADDAMT	|Updates the credit information |Uses the date above to update the
	|in the address file, and the 	|two files.
	|taxes owed in the LBDATA file.	|
	|Called just prior to exit.	|
____________________________________________________________________________________
 
	This program runs rather quickly, and is designed to receive
as many orders or payments as the operator should wish to input with
little or no compute time.  Upon exit the program will modify the files
using ETv.
MAINTENANCE MANUAL						PAGE 37
IV.3.5 CSMAIL
 
	Once the program determines what month you wish to mail,
CSMAIL calls the procedure MAILIT which executes all of the 
processing.  This procedure is used to control the processing 
so that it can declare variable length data structures that are
used throughout the processing.  These are:
	LIKEHASH[1:NUMBER,1:7]: Used to receive the address file 
			entries, and order data as it is processed.
	TITLES[1:REPORTS]: The titles of the report.
	REP[1:REPORT,1:2]: Stock and order levels.
	PRICES[1:REPORT]: Price of the reports.
	LOCATE[1:ORDERS,1:2]: Record and line number of addressee.
 
	These data structures are global to the rest of the procedures
that make up MAILIT.
 
 
PROC	 FUNCTION			 DATA STRUCTURES
____________________________________________________________________________________
entry	|Determines the month to process|ORDERS: number of orders.
	|initializes the data, and calls|REPORTS: number of reports.
	|MAILIT.			|REC: record number of month in REPT.DSK
	|				|OREC: record number of month in ORDER.DSK.
	|				|STT: page with coded report data.
MAILIT	| -explained above-		|
	|calls all of the following	|SEE ABOVE
	|procedures in order.		|
CHECKS	|Display the current inventory	|Sets up TITLES, PRICES, and REP.
	|levels and allow the operator	|Allows changes to REP[X,1].
	|to change any or all.		|
MAKELS	|Uses the stock levels to fill	|During the processing, some hash table
	|the orders in FIFO order. Uses	|entries are temporarily stored in
	|SHELST to order the orders. To	|"LIKEHASH[X,0]", while the orders
	|do this the HASHTB↔LIKEHASH is	|are put in HASHTB, filled, and sorted.
	|temporarily made. Also adds the|Also LIKENUM↔NUMBER.
	|report entries to REPTFL.DSK	|
LABELS	|Produces the labels for active	|The MAILIT global data is used.
	|then inactive customers, uses	|The address is added to LIKEHASH to 
	|LABIT to put the labels in the	|use in INVOICES, and the address is
	|file.				|passed to LABIT in ADDRESS. ADDER
	|				|is used to pass data to LABELS file.
LABIT	|Configures the labels and reads|Receives the address in ADDRESS,
	|then to the file when there are|uses ADDER to build up the entry.
	|at least 8000 characters of    |
	|them.				|
INVOICES|This procedure will print one	|The invoice format is from the LBDATA
	|invoice for each order, and    |file.  The invoices are made one at a
	|output it to the INVOICES file.|time in the string SAVER.
REPORT	|Adds the summary of orders	|LINE and STT are used to build up
	|processed and funds charged to	|the summaries that are passed to
	|the INVOICES file as the last 	|the file.
	|page.				|
____________________________________________________________________________________
 	
	If the program runs to completion, and all of the labels are not
in the file, you may want to either require more string space, or break
the order list into two runs by splitting it between months.
SENDER             						PAGE 38
 
			V. SENDER
 
 
V.1 INTRODUCTION
 
	Sender is a stand  alone porgram that was designed to process
late orders for reports by anyone regardless of if they are on the
address file or not.  The program will update the inventory, and compute
an invoice, but will not update the credit balance of the account, which
can be done with LISTUP.


V.2 USE OF SENDER

	The CSMAIL function is entered as follows:

	CSREPT - what can I do for you? *CSMAIL<cr>
	The program will respond as follows:
 
	SENDER - Enter name or <cr> to exit *
	The acceptable responses are:
		    ?<cr>   WILL PRINT YOUR OPTIONS
		 HELP<cr>   WILL PROVIDE SOME HELP
		     <cr>   WILL CAUSE THE PROGRAM TO EXIT
		<name<<cr>  THE FIRST LINE OF THE ADDRESS FOR THIS ORDER

	Enter line <#> of the address *
	The acceptable responses are:
		<line><cr>  THE ADDRESS LINE (FIVE LINES ARE ASKED FOUR FOR
			    THE ADDRESS, AND THE NAME LINE) MUST BE LESS THEN
			    35 LETTERS.
		     <cr>   WILL CAUSE THE ADDRESS LINE TO BE LEFT BLANK.

	Is the customer to be charged for reports (Y or N)? *
	The acceptable responses are:
		    ?<cr>   WILL PRINT YOUR OPTIONS
		 HELP<cr>   WILL PROVIDE SOME HELP
		     <cr>   WILL CAUSE THE PROGRAM TO REPEAT THE QUESTION.
		    Y<cr>   THE CUSTOMER WILL BE CHARGED FOR REPORTS THAT ARE SENT.
		    N<cr>   NO CHARGE  WILL BE MADE FOR REPORTS.

	Is this order to be sent to someone within California (Y or N)? *
	The acceptable responses are:
		    ?<cr>   WILL PRINT YOUR OPTIONS
		 HELP<cr>   WILL PROVIDE SOME HELP
		     <cr>   WILL CAUSE THE PROGRAM TO REPEAT THE QUESTION.
		    Y<cr>   THE CUSTOMER WILL BE ACCESSED TAX FOR REPORTS ORDERES.
		    N<cr>   NO TAX WILL BE CHARGED.

	Report title or <cr> if finished *
	The legal responses are:
		    ?<cr>   WILL PRINT YOUR OPTIONS
		 HELP<cr>   WILL PROVIDE SOME HELP
		     <cr>   WILL CAUSE THE INVOICE TO BE WRITTEN.
	     <report><cr>   THE OFFICAL NAME OF A REPORT THAT WAS ORDERED.
SENDER             						PAGE 39
V.3 MAINTENANCE OF SENDER
 
	The sole purpose of the sender program is to produce an 
invoice and update the stock levels for reports that come in late
from anyone regardless of whether they are in the address file or not.
The program udates the inventory levels in the report history file
REPTFL.DSK, writes the invoices to the temporary file INVOIC, and 
exits.

PROC	 FUNCTION			 DATA STRUCTURES
____________________________________________________________________________________
exec	|Reads in the reports, and data	|ADDRESS[1:5] the name&address of the current
	|file,processes the requests in	|	processing.
	|a loop calling ORDER and	|DATA the report history file.
	|INVOICE, and finally reads the	|CHARGE indicates if orders are to be charged
	|modified report file to disk.	|	for (=1) or not (=0).
	|				|ZIP indicates if tax is to be computed (=1).
ORDER	|Receives the report orders in	|ORDERS number ordered
	|a loop, checks to see if they	|NOOR number not in stock
	|are in the file, and in stock	|INSTOC flag to indicate that order was at 
	|and adds them to either the	|	least partially filled
	|in stock, or out of stock list	|NOSTOC flag to indicate the order was at
	|				|	least partially unfilled.
	|				|ORDTIT titles and prices of reports found
	|				|NOORTIT titles of reports not found.
	|				|TOTAL total charge.
INVOICE	|Uses the data provided by ORDER|
	|to assemble an invoice form the|
	|format in the LBDATA file. Then|
	|outputs the invoice to INVOIC	|
	|and returns to the executive to|
	|process another order.		|
	|				|
____________________________________________________________________________________
SENDER             						PAGE 40
V.3 RUN EXAMPLE
al use,csr
.run sender
SENDER - Enter name or <cr> to exit *help
HELP FOR THE SENDER PROGRAM:					
     The sender program is designed to produce an invoice for	
orders made by people who are not in the address file.  It will
also keep track of the inventory level.  The program uses the	
reports that are in the REPTFL.DSK data file, which is updated	
after the normal mailing by CSMAIL.  If you wish to send late	
copies to an individual who is in the address file, you will	
have to update the amount of money that he owes by useing the	
LISTUP porgram.	
     The program runs in a loop allowing you to input the address,
followed by the reports that were ordered one at a time.  If a	
report cannot be found, or it is out of stock the invoice will	
so state, otherwise the customer will be charged if he is not a
free user.
The legal responses are:

    ?<cr>   WILL PRINT YOUR OPTIONS
 HELP<cr>   WILL PROVIDE SOME HELP
     <cr>   WILL CAUSE THE PROGRAM TO EXIT
<name<<cr>  THE FIRST LINE OF THE ADDRESS FOR THIS ORDER
SENDER - Enter name or <cr> to exit *thomas l. james

Enter line 1 of the address *2354 dellart rd.
Enter line 2 of the address *unnyvale, california 94567
Enter line 3 of the address *
Enter line 4 of the address *
Is the customer to be charged for reports (Y or N)? *?
The legal responses are:

    ?<cr>   WILL PRINT YOUR OPTIONS
 HELP<cr>   WILL PROVIDE SOME HELP
     <cr>   WILL CAUSE THE PROGRAM TO REPEAT THE QUESTION.
    Y<cr>   THE CUSTOMER WILL BE CHARGED FOR REPORTS THAT ARE SENT.
    N<cr>   NO CHARGE  WILL BE MADE FOR REPORTS.
Is the customer to be charged for reports (Y or N)? *y
Is this order to be sent to someone within California (Y or N)? *y
Report title or <cr> if finished *?
The legal responses are:

    ?<cr>   WILL PRINT YOUR OPTIONS
 HELP<cr>   WILL PROVIDE SOME HELP
     <cr>   WILL CAUSE THE INVOICE TO BE WRITTEN.
<reoort><cr>   THE OFFICAL NAME OF A REPORT THAT WAS ORDERED.
Report title or <cr> if finished *aim-280

Report title or <cr> if finished *stan-cs-76-561

Report title or <cr> if finished *aim-100

REPORT OUT OF STOCK
Report title or <cr> if finished *

SENDER - Enter name or <cr> to exit *
GOODBYE - Your invoices are in INVOICE - Have a nice day.
End of SAIL execution
APPENDIX A							PAGE 41
- - - THE FOLLOWING IS A RUN EXAMPLE FOR CSREPT - - -

run report

             CSREPT  -  What can I do for you? *?

LEGAL RESPONSES ARE:
     LISTup<cr>- to change to mailing list
     MAKEml<cr>- send the abstract listing
     CSORD<cr>-  process incoming orders
     CSMAIL<cr>- send out the reports and bills (invoice)
     CSRECD<cr>- process payments received
     DATA<cr> -  update data items
     SEARCH<cr>- searches for adressee
     HELP<cr> -  for a little help from a friend
     <cr>     -  to exit (<cr> will usually exit one level

             CSREPT  -  What can I do for you? *error

LEGAL RESPONSES ARE:
     LISTup<cr>- to change to mailing list
     MAKEml<cr>- send the abstract listing
     CSORD<cr>-  process incoming orders
     CSMAIL<cr>- send out the reports and bills (invoice)
     CSRECD<cr>- process payments received
     DATA<cr> -  update data items
     SEARCH<cr>- searches for adressee
     HELP<cr> -  for a little help from a friend
     <cr>     -  to exit (<cr> will usually exit one level

             CSREPT  -  What can I do for you? *help



HELP FOR THE CS REPORT DISTRIBUTION SYSTEM

     THE COMPUTER SCIENCE REPORT PROGRAM (CSREPT) IS      
TO PROVIDE THE ACCOUNTING AND DISTRIBUTION FUNCTION FOR THE
LIBRARY AND PUBLICATIONS COMMITTEE.  IT IS COMPOSED OF SIX
FUNCTIONS WHICH ARE DESCRIBED BELOW, THEY CAN BE REACHED  
BY TYPING THE FOLLOWING RESPONSES WHEN ASKED BY CSREPT WHAT
YOU WISH TO DO:                                           
   	LISTup<cr>   -  this function is intended to make all 
                    changes to the mailing list.          
    MAKEml<cr>   -  makes the mailing labels, the order forms
                    and prepares the files to receive the 
                    report orders and payments.           
    CSORD<cr>    -  processes the orders as they are received
                    and will inform you when all copies of
                    a document have been ordered.         
    CSMAIL<cr>   -  prints the invoices and mailing labels
                    and provides summary of orders.       
    CSRECD<cr>   -  processes payments received.          
    DATA<cr>     -  allows you to make changes to some of 
                    of the data used in processing-       
                    price per page,number of copies of
                    lists to output.                  
APPENDIX A							PAGE 42
- - - THE FOLLOWING IS A RUN EXAMPLE FOR CSREPT - - -

	SEARCH<cr>   -  allows you to search for an addressee 
			in the file.  You can search by the   
			hash code which is fastest, the zip   
                    which is fairly efficient, or the last
                    name which is ridiculously bad.  If   
                    you run a function that needs a hash  
		    which is supplied incorrectly it will 
                    cause an automatic search             
                                                          
THE PROGRAMS ARE DESIGNED SO THAT INPUTS ARE CHECKED AS YOU
TYPE THEM, AND IF THEY ARE FOUND TO BE WRONG YOU ARE SHOWN
THE ACCEPTABLE INPUTS.  HELP IS AVAILABLE BY TYPING-HELP<cr>¬
ON THE ENTRANCE TO ANY PROGRAM, AND MANY MAJOR FUNCTIONS OF
THE PROGRAMS.  IF AT ANY TIME YOU ARE UNSURE AS TO THE    
EXPECTED INPUT SIMPLY TYPE -?<cr>-.  FOR A DETAILED DISCUSSION
OF THE PROGRAM OPERATION READ THE REPORT.   
             CSREPT  -  What can I do for you? *data

DATA - THE CURRENT VALUES ARE:
DATA 7
1. BASE=1.00        THIS IS THE BASE PRICE FOR A DOCUMENT
2. PRICE=0.02       THIS IN THE COST PER PAGE OF A DOCUMENT
3. TAX=60           THIS IS IN TENTHS OF CENTS (IE 65 IS 6.5% OR $0.065)
4. COPIES=4         THIS IS THE NUMBER OF MASTER COPIES OF ORDER FORM AND SUMMARY
5. LINELB=6         THIS IS THE NUMBER OF LINES ON A LABEL (INCLUDING BETWEEN TWO)
6. LINEST=1         THIS IS THE NUMBER FROM THE TOP TO THE FIRST LINE
7. NAME=VICKI L FAHRENHOLZ             NAME OF PERSON TO RECEIVE ORDERS
8. OWE=0.0          THIS IS THE TAX OWED, COMPUTED BY CSMONEY, INITIALIZED BY YOU

NUMBER OF THE ITEM TO BE CHANGED, OR <cr> TO EXIT *2

NEW VALUE *0.03

DATA - THE CURRENT VALUES ARE:
DATA 7
1. BASE=1.00        THIS IS THE BASE PRICE FOR A DOCUMENT
2. PRICE=0.03       THIS IN THE COST PER PAGE OF A DOCUMENT
3. TAX=60           THIS IS IN TENTHS OF CENTS (IE 65 IS 6.5% OR $0.065)
4. COPIES=4         THIS IS THE NUMBER OF MASTER COPIES OF ORDER FORM AND SUMMARY
5. LINELB=6         THIS IS THE NUMBER OF LINES ON A LABEL (INCLUDING BETWEEN TWO)
6. LINEST=1         THIS IS THE NUMBER FROM THE TOP TO THE FIRST LINE
7. NAME=VICKI L FAHRENHOLZ             NAME OF PERSON TO RECEIVE ORDERS
8. OWE=0.0          THIS IS THE TAX OWED, COMPUTED BY CSMONEY, INITIALIZED BY YOU

NUMBER OF THE ITEM TO BE CHANGED, OR <cr> TO EXIT *

APPENDIX A							PAGE 43
- - - THE FOLLOWING IS A RUN EXAMPLE FOR CSREPT - - -
             CSREPT  -  What can I do for you? *search

SEARCH: DO YOU KNOW THE HASH CODE? (Y, N OR EXIT) *y

HASH CODE *940lr

YOUR ENTRY IS ON PAGE: 0006
* 94086|NNNNNNNNNNNN#940LR$000.00
CONTROL DATA CORPORATION
LIBRARY-RM. 140
215 MOFFETT PARK DR.
SUNNYVALE, CALIFORNIA

DO YOU WISH TO DO ANOTHER SEARCH? (Y OR N) *y

SEARCH: DO YOU KNOW THE HASH CODE? (Y, N OR EXIT) *n

SEARCH: DO YOU KNOW THE ZIP CODE? (Y,N OR EXIT)*y

ZIPCODE? *94086

HASH=940GR  PAGE=0013 NAME=  GEORGE R. LEWIS
HASH=940NT  PAGE=0016 NAME=  KORNEL SPIRO
HASH=9400V  PAGE=0018 NAME=  DR. D. VAN VOORHIS
HASH=940GW  PAGE=0019 NAME=  WOLFGANG WERNER
HASH=940LR  PAGE=0006 NAME=  CONTROL DATA CORPORATION
ENTER HASH IF HE IS SHOWN, ELSE <cr> TO CONTINUE. *940gw

THE ENTRY FOR THE HASH YOU GAVE IS:
* 94086|NNNNNNNNNNNN#940GW$000.00
WOLFGANG WERNER
ATI
645 ALMANOR
SUNNYVALE, CALIFORNIA

             CSREPT  -  What can I do for you? *search

SEARCH: DO YOU KNOW THE HASH CODE? (Y, N OR EXIT) *n

SEARCH: DO YOU KNOW THE ZIP CODE? (Y,N OR EXIT)*n

LAST NAME? (OR EXIT) *knuth

HASH=IDMFE PAGE=0127 NAME=  PROF. D. KNUTH
ENTER HASH IF HE IS SHOWN, ELSE <cr> TO CONTINUE. *idmfe

THE ENTRY FOR THE HASH YOU GAVE IS:
*FIDMAI|NNNNNNNNNNNN#IDMFE$000.00
 PROF. D. KNUTH
 POLYA HALL
APPENDIX A							PAGE 44
- - - THE FOLLOWING IS A RUN EXAMPLE FOR LISTUP  - - -
run report

             CSREPT  -  What can I do for you? *list

LISTUP - Function or <cr> to exit *help



ADDRESS FILW UPDATE PROGRAM HELP

THE PROGRAM IS DESIGNED TO MAKE ANY UPDATES NECESSARY 
TO THE USER FILE FOR CSREPORT RECIPIENTS.  THE FILE
IS MAINTAINED IN ETv FORMAT AND CAN BE READ USING THE
ETv TEXT EDITING SYSTEM.  IT IS REQUESTED THAT ALL FILE 
UPDATES BE DONE USING THIS PROGRAM SO THAT THE INTERNAL 
FILE REFERENCING BY THE CSREPORT SYSTEM CAN BE DONE. 

CHANGES ARE MADE TO THE FILE THROUGH INTERACTION
WITH THE USER, FIRST THE INPUTS ARE CHECKED AND IF AN 
ERROR IS DETECTED YOU WILL BE GIVEN AN OPPORTUNITY TO RESTART 
THEN IF ALL IS CORRECT THE PROGRAM WILL USE E TO PERFORM 
THE UPDATE AND RECONFIGURE THE FILE. 

IN ORDER TO INITIATE THE PROCESS ENTER:
    ADD<cr>        TO ADD A NEW ENTRY
    MOD<cr>        TO CHANGE AN ENTRY
    DEL<cr>        TO DELIT AN ENTRY
    ADD HELP<cr>   FOR HELP WITH AN ADD
    MOD HELP<cr>   FOR HELP WITH A CHANGE
    DEL HELP<cr>   FOR HELP WITH THE DELIT
    <cr>           TO EXIT

THERE IS HELP AVAILABLE FOR MOST OF THE INPUT REQUESTS, AND
YOU WILL BE PROMPTED TO ASK FOR IT.

NOW TYPE IN YOUR REQUEST--
LISTUP - Function or <cr> to exit *add help



ADD HELP:

THIS REQUIRES SOME PREPROCESSING IN ORDER TO DETERMINE THE 
USER'S HASH CODE, AND PACK IT WITH THE STATISTICAL DATA 
WHICH WILL BE MAINTAINED WITH THE ADDRESS.

THE PROCEDURE THAT PERFORMS THE ADD OPERATION REQUEST 
ACTUALLY ONLY PREPROCESSSES THE DATA INTERACTIVELY, AND 
PASSES IT TO THE MODIFY PROCEDURE.  BY DOING THIS 
YOU WILL HAVE THE OPPORTUNITY TO CHECK YOUR INPUT, 
AND CHANGE IT IF IT IS WRONG. THE ACTUAL ADD WILL NOT 
BE PERFORMED UNTIL YOU OK ENTRY.

APPENDIX A							PAGE 45
- - - THE FOLLOWING IS A RUN EXAMPLE FOR LISTUP  - - -

THE FORMAT OF AN ENTRY IS:

     *CXXXXX|MMMMMMMMMMMM#HHHHH$000.00S  <code line>
     <address line 1 - name> 
     <address line 2 > 
     <address line 3 > 
     <address line 4 > 
     <address line 5 > 
    - - TYPE <cr> TO CONTINUE HELP - -

YOU WILL BE ALLOWED 5 LINES FOR THE USERS ADDRESS 

 CODE LINE KEYS: C -BILLING CODE OF  b ,N,M,A,F
             XXXXX -ZIP OR COUNTRY CODE OF  b ,USSR,IDMAI
                 M -NUMBER OF ORDERS EACH OF LAST 12 MON
             HHHHH -USER HASH CODE FOR SORTING THE FILE
                    MADE FROM ZIP CODE AND NAME
          $000.00S -MONEY USER OWES AND SIGN.

YOU WILL BE ASKED TO INPUT: THE USERS NAME, THE BILLING 
CATEGORY (HELP IS AVAILABLE), ZIP OR COUNTRY CODE (HELP 
IS AVAILABLE), AND UP TO 4 OTHER ADDRESS LINES.

THE MOD PROGRAM WILL THEN DISPLAY YOUR ENTRY AND IF IT 
IS OK YOU CAN ACCEPT IT, IF NOT YOU CAN CHANGE ANY LINE, 
CAUTION SHOULD BE EXERCISED IN CHANGING THE TITLE LINE 
YOU CANNOT CHANGE THE HASH CODE.
ADD/MOD enter option *add

TYPE IN THE FIRST LINE (THE NAME) OF THIS ENTRY OR <cr> TO EXIT
*capt william t. colema iii

BILLING CATEGORY *f

ZIP CODE, OR COUNTRY *94022
                               Please don't reenter the zip with the address

LINE 0002 *11495 robinhood ct

LINE 0003 *los altos, cal

LINE 0004 *

LINE 0005 *

THE ENTRY YOU WISH TO CHANGE IS:
      LINE# 0 *F94022|NNNNNNNNNNNN#940LO$000.00
      LINE# 1 CAPT WILLIAM T. COLEMA III
      LINE# 2 11495 ROBINHOOD CT
      LINE# 3 LOS ALTOS, CAL
      LINE# 4 
      LINE# 5 
UPdate,ABort,OR LINE NUMBERS TO CHANGE *up
A new page will be added to the file.
TYPE IN THE FIRST LINE (THE NAME) OF THIS ENTRY OR <cr> TO EXIT
*
APPENDIX A							PAGE 46
- - - THE FOLLWOING IS A RUN EXAMPLE FOR LISTUP  - - -

ADD/MOD enter option *?

LEGAL RESPONSES ARE:
       ADD<cr>        TO ADD A NEW ENTRY
       MOD<cr>        TO CHANGE AN ENTRY
       ADD HELP<cr>   FOR HELP WITH AN ADD
       MOD HELP<cr>   FOR HELP WITH A CHANGE
       <cr>           TO PROCESS THE MODIFICATIONS AND EXIT
ADD/MOD enter option *mod help



MOD HELP:
THE MODIFY FUNCTION WILL ALLOW YOU TO CHANGE 
ANY OR ALL OF THE LINES OF THE ADDRESS FOR ANY CUSTOMER 
THAT IS IN THE ADDRESS FILE (YOU CAN'T CHANGE THE USER 
HASH CODE), BUT WON'T MAKE AN UPDATE TO THE FILE UNTIL 
YOU HAVE APPROVED THE ENTRY COMPLETELY. 

YOU WILL BE ASKED TO SUPPLY THE USER HASH WHICH IS USED  
TO LOCATE THE ENTRY IN THE FILE, IF THE PROGRAM CAANNOT 
LOCATE THE ENTRY YOU WILL BE TOLD TO REINITIATE THE MOD 
AND TRY AGAIN IF YOU MISTYPED, OTHERWISE ENTER THE INDIVIDUAL 
AS AN ADD.  ONCE THE ENTRY TO BE CHANGED HAS BEEN FOUND IT 
WILL BE DISPLAYED WITH LINE NUMBS.  YOU WILL THEN BE 
ASKED TO ENTER THE NUMBs of the lines YOU WISH TO CHANGE 
THERE ARE THREE RESPONCES TO THIS:

         NNNNNN<cr>   THE LINE NUMBS OF THE ENTRIES
                      THAT YOU WISH TO MODIFY
         UPdate<cr>   GRANTS PERMISSION TO UPDATE
         ABort<cr>    ABORT THE ATTEMPT AND RESTART

WHEN APPROVED THE ACTUAL CHANGE WILL BE DONE BY ETv UNDER 
PROGRAM CONTROL.
ADD/MOD enter option *mod

HASH CODE OR <cr> TO EXIT *idmfe

THE ENTRY YOU WISH TO CHANGE IS:
      LINE# 0 *FIDMAI|NNNNNNNNNNNN#IDMFE$000.00
      LINE# 1  PROF. D. KNUTH
      LINE# 2  POLYA
      LINE# 3 
      LINE# 4 
      LINE# 5 
UPdate,ABort,OR LINE NUMBERS TO CHANGE *2

CHANGES* POLYA HALL        
APPENDIX A							PAGE 47
- - - THE FOLLWOING IS A RUN EXAMPLE FOR LISTUP  - - -

THE ENTRY YOU WISH TO CHANGE IS:
      LINE# 0 *FIDMAI|NNNNNNNNNNNN#IDMFE$000.00
      LINE# 1  PROF. D. KNUTH
      LINE# 2  POLYA HALL
      LINE# 3 
      LINE# 4 
      LINE# 5 
UPdate,ABort,OR LINE NUMBERS TO CHANGE *up

HASH CODE OR <cr> TO EXIT *

ADD/MOD enter option *

The changes will be made.
The file update has been made
LISTUP - Function or <cr> to exit *del help



DELETE HELP:
THE DELETE FUNCTION IS VERY SIMPLE. IT MERELY ASKS 
FOR THE USER HASH, AND WHEN IT FINDS THE ENTRY IT WILL 
PRINT OUT THE NAME AND ASK FOR PERMISSION TO DELETE.
 IF PERMISSION IS GRANTED THE ENTRY WILL BE DELETED.
LISTUP - Function or <cr> to exit *del

HASH CODE TO DELETE, OR <cr> TO EXIT *940lo

CAN I DELETE:CAPT WILLIAM T. COLEMA III
 (Yes OR No) *y

HASH CODE TO DELETE, OR <cr> TO EXIT *

The file update has been made
LISTUP - Function or <cr> to exit *
APPENDIX A		 					PAGE 48
- - - THE FOLLWOING IS A RUN EXAMPLE FOR MAKEML  - - -

             CSREPT  -  What can I do for you? *?

LEGAL RESPONSES ARE:
     LISTup<cr>- to change to mailing list
     MAKEml<cr>- send the abstract listing
     CSORD<cr>-  process incoming orders
     CSMAIL<cr>- send out the reports and bills (invoice)
     CSRECD<cr>- process payments received
     DATA<cr> -  update data items
     SEARCH<cr>- searches for adressee
     HELP<cr> -  for a little help from a friend
     <cr>     -  to exit (<cr> will usually exit one level

             CSREPT  -  What can I do for you? *make

MAKEML - The AUG list is open and will be used. Enter option *help



  HELP FOR THE MAKEML FUNCTION

THIS PROGRAM WILL:  1. Produce the mailing labels on a 
			temporary file so you can list 	
			them on the printer.		
	             2. Produce master copies of the mailing	
			list order form.		
		     3. Build or update the files for the
			report information, and the orders received.
		     4. Provide summaries of the people	
			sent lists, and accounts responsible.

FOR EACH MAILING OF AN ABSTRACT A NEW FILE WILL BE OPENED,
THESE ARE REFERRED TO AS MONTHLY FILES, BUT CAN BE SENT 
AT ANY INTERVAL.  ONCE A FILE IS OPENED YOU CAN CONTINUE 
TO ADD REPORTS TO IT UNTIL THE MAILING LIST AND ABSTRACT
ARE SENT AT WHICH TIME THE FILE WILL BE MARKED AS SENT AND YOU	
WILL BE ASKED -MONTH- THE NEXT TIME YOU ENTER.			
	 							
     WHEN YOU ENTER THE PROGRAM A CHECK IS MADE TO DETERMINE IF
A FILE IS ALREADY OPEN, IF NOT YOU WILL BE ASKED THE MONTH, AND 
A FILE WILL BE OPENED, IF ONE IS ALREADY OPEN YOU WILL BE ASKED
IF YOU WISH TO ADD MORE REPORTS OR MAKE THE LABELS,LIST,ETC.	
								
     ENTRIES ARE ADDED TO THE FILE THROUGH INTERACTION, IF AT	
ANY TIME YOU ARE NOT SURE OF THE PROPER RESPONSE SIMPLY TYPE ?.
								
     WHEN YOU HAVE FINISHED ADDING ENTRIES, YOU WILL BE ASKED	
IF YOU WISH TO MAIL THE LISTING, IF SO THE REPORTS WILL BE GENERATED
AND OUTPUT, AND THE FILE MARKED AS CLOSED FOR THAT MONTH.
APPENDIX A							PAGE 49
- - - THE FOLLWOING IS A RUN EXAMPLE FOR MAKEML  - - -
MAKEML - The AUG list is open and will be used. Enter option *?

THE LEGAL RESPONSES ARE:

      	    <cr> -	to exit makeml		
	HELP<cr> -	for a brief tutorial	
      BUILD<cr> -	to add to the report list	
	MAIL<cr> -	to send the mail/order list
MAKEML - The AUG list is open and will be used. Enter option *build

REPORT NUMBER *stan-76-cs-578
NUMBER OF HARDCOPIES AVAILABLE *435
PRICE(NN.NN ie 19.76) $comp
NUMBER OF PAGES *123
THE COMPUTED PRICE IS $4.70
NUMBER OF MICROFICHE AVAILABLE *no
ACCOUNT *arpa
PERCENT *55

 55% ALLOCATED, THE TOTAL MUST EQUAL 100
ACCOUNT *onr
PERCENT *45
ONR REPORT (Y OR N)? *y
ARPA REPORT (Y OR N)? *y


THIS IS THE CODED ENTRY:
*STAN-76-CS-578|D,0435,0000,04.70|E,NONO,0000|ARPA.54,ONR.44|3

IS IT OK (Y,N,?)?

THE LEGAL RESPONSES ARE:

	Y<cr>	approval, the entry will be included	
	N<cr>	disapproval, the entry will be discarded
   (default)   anything else will give you this, and   
		then give you another chance to approve.

 *CSXXX-AIXX|H,NNNN,0000,PP.PP|M,NNNN,0000|AAAA.%%|Y	
	 ↓   ↓ ↓       ↓    ↓  ↓   ↓   ↓    ↓       |Y=1 ONR REPORT
	 ↓   ↓ ↓       ↓    ↓  ↓   ↓   ↓    ↓       |Y=2 ARPA REPORT
	 ↓   ↓ ↓       ↓    ↓  ↓   ↓   ↓    ↓       |Y=3 BOTH ARPA&ONA
	 ↓   ↓ ↓       ↓    ↓  ↓   ↓   ↓    ACCOUNT # AND PERCENT-1
	 ↓   ↓ ↓       ↓    ↓  ↓   ↓   NUMBER FICHE ORDERED (ACCOUNTING)
	 ↓   ↓ ↓       ↓    ↓  ↓   NUMBER OF MICROFICHE
	 ↓   ↓ ↓       ↓    ↓  ↓   NONO NOT AVAILABLE OR UNLIMITED
	 ↓   ↓ ↓       ↓    ↓  COMPUTED ORDER NUMBER FOR MICROFICHE
	 ↓   ↓ ↓       ↓    PRICE PER HARDCOPY			
	 ↓   ↓ ↓       NUMBER OF HARDCOPIES ORDERED		
	 ↓   ↓ NUMBER HARD COPIES AVAILABLE			
	 ↓   COMPUTED HARDCOPY ORDER NUMBER			
	 CS REPORT NUMBER WITH OPTIONAL EXTENSION		

THIS IS THE CODED ENTRY:
*STAN-76-CS-578|D,0435,0000,04.69|E,NONO,0000|ARPA.54,ONR.44|3

IS IT OK (Y,N,?)n
THE ENTRY WILL BE DISCARDED, AND YOU CAN RESTART
APPENDIX A							PAGE 50
- - - THE FOLLWOING IS A RUN EXAMPLE FOR MAKEML  - - -

REPORT NUMBER *

WOULD YOU LIKE TO MAIL THE LISTING NOW? (Y OR N)*?

THE LEGAL RESPONSES ARE:

     <cr>	to exit				
    N<cr>	to exit				
    Y<cr>      to make the mailing list,labels	
               and summaries
IF YOU DO NOT MAIL THE LIST NOW, IT WILL REMAIN OPEN
FOR ADDITIONAL REPORT ENTRIES, UNTIL MAILING TIME.
WOULD YOU LIKE TO MAIL THE LISTING NOW? (Y OR N)*y

Are Cheshire labels to be printed? (Y or N)*?

THE LEGAL RESPONSES ARE:

   Yes<cr>      Will cause labels to be printed in the format
		necessary for automatic processing.
    No<cr>	Will cause labels to be printed in the format 
		for AVERY labels.

Are Cheshire labels to be printed? (Y or N)*y

The mailing labels have been written into the
file: AUGLAB which can be listed when the labels are available.

ENTER THE CUTOFF DATE FOR ORDERS *1 september 1976

Order forms and summaries are in the file: INFORM.
APPENDIX A							PAGE 51
- - - THE FOLLWOING IS A RUN EXAMPLE FOR CSORD   - - -

             CSREPT  -  What can I do for you? *csord

ORDER - MONTH *?

THE LEGAL RESPONSES ARE:

INPUT WAS NOT A MONTH IN THE FILE
	<cr>   TO END THE PROCESSING		
   HELP<cr>   FOR A TUTORIAL			
  LLLLL<cr>   MONTH OF THE ORDERS TO PROCESS
ORDER - MONTH *help

This procedure will process incoming orders.  It will iteratively:
	1. Check the hash code and provide a search if
	   the hash is not available.
	2. Process the orders as they are received.
	3. Optionally process any money sent with the order.

Once all of the orders are received for the session the procedure
will update ORDER.DSK, and inform the operator if any of the
reports have been depleted during this session.
ORDER - MONTH *aug

HASH CODE *770ea

IS PROF THOMAS ANDREWS THE CORRECT CUSTOMER? (Y or N)*y

REPORT NUMBERS #1357a

WAS ANY MONEY SENT WITH THE ORDER? (Y OR N)*n

HASH CODE *engaa

IS ROBERT C. SMITH THE CORRECT CUSTOMER? (Y or N)*y

REPORT NUMBERS #146c

WAS ANY MONEY SENT WITH THE ORDER? (Y OR N)*n

HASH CODE *277sf

IS BARBRA GARRETT THE CORRECT CUSTOMER? (Y or N)*y

REPORT NUMBERS #1468ac

WAS ANY MONEY SENT WITH THE ORDER? (Y OR N)*n

HASH CODE *123rd

SORRY 123RD is not in the file.
SEARCH: DO YOU KNOW THE ZIP CODE? (Y,N OR EXIT)*y

ZIPCODE? *12345
APPENDIX A							PAGE 52
- - - THE FOLLWOING IS A RUN EXAMPLE FOR CSORD   - - -

HASH=123NH  PAGE= 51 NAME=  DR. EARNEST G. HOLTZMANN

ENTER HASH IF HE IS SHOWN, ELSE <cr> TO CONTINUE. *123nh

THE ENTRY FOR THE HASH YOU GAVE IS:
* 12345|NNNNNNNNNNNN#123NH$000.00
DR. EARNEST G. HOLTZMANN
GENERAL ELECTRIC
RESEARCH & DEVELOPMENT CTR.
SCHENECTADY, NEW YORK


IS DR. ERNEST G. HOLTZMAN THE CORRECT CUSTOMER? (Y or N)*y

REPORT NUMBERS #2469b

WAS ANY MONEY SENT WITH THE ORDER? (Y OR N)*n

HASH CODE *378ec

IS DR. WILLIAM A. HOLLIMAN THE CORRECT CUSTOMER? (Y or N)*y

REPORT NUMBERS #15

WAS ANY MONEY SENT WITH THE ORDER? (Y OR N)*y

AMOUNT RECEIVED $10.45

IS $ 10.45 THE CORRECT AMOUNT? (Y OR N)*y

HASH CODE *201om

IS RPOF. DAVID S. MINTON THE CORRECT CUSTOMER? (Y or N)*n

HASH CODE *itanm

IS PROF. ERNEST ANDRESON THE CORRECT CUSTOMER? (Y or N)*n

REPORT NUMBERS #147ad

ERROR - REPORT 00013 WAS NOT OFFERED THIS MONTH THE	ORDER WILL BE FLUSHED, TRY AGAIN.
REPORT NUMBERS #itanm

ERROR - REPORT 00018 WAS NOT OFFERED THIS MONTH THE	ORDER WILL BE FLUSHED, TRY AGAIN.
REPORT NUMBERS #1246

WAS ANY MONEY SENT WITH THE ORDER? (Y OR N)*n
HASH CODE *?
THE LEGAL RESPONSES ARE:

    ?<cr>   WILL PRINT YOUR OPTIONS
 HELP<cr>   WILL PROVIDE SOME HELP
     <cr>   WILL PROCESS THE INPUTS (IF ANY) AND RETURN TO CSREPT
HHHHH<cr>   THE FIVE DIGIT HASH CODE.
HASH CODE *
APPENDIX A							PAGE 53
- - - THE FOLLWOING IS A RUN EXAMPLE FOR CSMAIL  - - -

             CSREPT  -  What can I do for you? *csmail

The AUG order file will be used - OK (Y OR N) *help

HELP FOR THE CSMAIL PROGRAM:					
     This program will produce the invoices and mailing labels	
for the monthly orders of CS REPORTS.  It uses the open order file
and current inventory (which you will have the opportunity to	
update) to fill the orders on a first come first serve basis.

     The labels and invoices are output in the same order, and	
in zip code order.  They will be written into files called LABELS
and INVOIC and can be listed at your convenience, be sure to 	
delete the files after they have been listed.			
     Finally a summary of the processing, billing and charges	
will be output. 
The legal responses are:

    ?<cr>   WILL PRINT YOUR OPTIONS
 HELP<cr>   WILL PROVIDE SOME HELP
     <cr>   WILL EXIT THE PROGRAM
    Y<cr>   WILL CAUSE THE DISPLAYED MONTH TO BE USED
    N<cr>   WILL ASK WHAT MONTH TO USE
The AUG order file will be used - OK (Y OR N) *y

The current stock is:
       1. *STAN-CS-76-555         NO LIMIT COPIES
       2. *STAN-CS-76-555         NO LIMIT COPIES   MICROFICHE
       3. *STAN-CS-76-556         NO LIMIT COPIES
       4. *STAN-CS-76-556         NO LIMIT COPIES   MICROFICHE
       5. *STAN-CS-76-557         NO LIMIT COPIES
       6. *STAN-CS-76-557         NO LIMIT COPIES   MICROFICHE
       7. *STAN-CS-76-558         NO LIMIT COPIES
       8. *STAN-CS-76-558         NO LIMIT COPIES   MICROFICHE
       9. *STAN-CS-76-560         NO LIMIT COPIES
      10. *STAN-CS-76-560         NO LIMIT COPIES   MICROFICHE
      11. *STAN-CS-76-561         NO LIMIT COPIES
      12. *STAN-CS-76-561         NO LIMIT COPIES   MICROFICHE

Are there any changes? (Y,N,STOCK)*y

Report display number *1

Number available *4


Are there any changes? (Y,N,STOCK)*y

Report display number *3

Number available *5
APPENDIX A							PAGE 54
- - - THE FOLLWOING IS A RUN EXAMPLE FOR CSMAIL  - - -


Are there any changes? (Y,N,STOCK)*y

Report display number *10

Number available *100


Are there any changes? (Y,N,STOCK)*y

Report display number *11

Number available *3


Are there any changes? (Y,N,STOCK)*stock

The current stock is:
       1. *STAN-CS-76-555                4 COPIES
       2. *STAN-CS-76-555         NO LIMIT COPIES   MICROFICHE
       3. *STAN-CS-76-556                5 COPIES
       4. *STAN-CS-76-556         NO LIMIT COPIES   MICROFICHE
       5. *STAN-CS-76-557         NO LIMIT COPIES
       6. *STAN-CS-76-557         NO LIMIT COPIES   MICROFICHE
       7. *STAN-CS-76-558         NO LIMIT COPIES
       8. *STAN-CS-76-558         NO LIMIT COPIES   MICROFICHE
       9. *STAN-CS-76-560         NO LIMIT COPIES
      10. *STAN-CS-76-560              100 COPIES   MICROFICHE
      11. *STAN-CS-76-561                3 COPIES
      12. *STAN-CS-76-561         NO LIMIT COPIES   MICROFICHE

Are there any changes? (Y,N,STOCK)*n

The mailing labels have been printed into a file called LABELS.
Labels for customers who placed  orders this month are first, and
those for customers who have not ordered for a year are last.
The file can be listed at any time, don't forget to delete it.


The invoices have been written into a file called: INVOICES.
APPENDIX A							PAGE 55
- - - THE FOLLWOING IS A RUN EXAMPLE FOR CSRECD  - - -
             CSREPT  -  What can I do for you? *csrecd

HASH CODE *

ERROR - The hash code should be 5 characters.
HASH CODE *help

This procedure will process payment for reports that have been 
sent out.  It first checks the HASH CODE, if no match is found	
a search will be performed.  Next it asks the amount received,
and updates the charge balance for the customer.  You will be 	
informed of the balance.					
THE LEGAL RESPONSES ARE:

    ?<cr>   WILL PRINT YOUR OPTIONS
 HELP<cr>   WILL PROVIDE SOME HELP
     <cr>   WILL PROCESS THE INPUTS (IF ANY) AND RETURN TO CSREPT
HHHHH<cr>   THE FIVE DIGIT HASH CODE.
HASH CODE *konee

IS PROF. ALLEN T. SAMUEL THE CORRECT CUSTOMER? (Y or N)*n

AMOUNT RECEIVED $23.45

IS $ 23.45 THE CORRECT AMOUNT? (Y OR N)*y

HASH CODE *

             CSREPT  -  What can I do for you? *

End of SAIL execution

APPENDIX B							PAGE 56
- - - THIS IS AN EXAMPLE OF THE ORDER FORM PRODUCED BY MAKEML - - -
                STANFORD COMPUTER SCIENCE REPORT ORDER FORM
 
     To order reports, or change your mailing address,return this sheet by
31 AUGUST 1976 checking the reports you wish to receive.

     HARDCOPY					  MICROFICHE
1. ___ *AIM-280                   $02.40     2. ___ *AIM-280            FREE
3. ___ *STAN-CS-76-556            $05.55     4. ___ *STAN-CS-76-556     FREE
5. ___ *STAN-CS-76-557            $02.25     6. ___ *STAN-CS-76-557     FREE
7. ___ *AIM-281                   $02.90     8. ___ *AIM-281            FREE
9. ___ *STAN-CS-76-559            $02.75     A. ___ *STAN-CS-76-559     FREE
B.  NOT AVAILABLE                            C. ___ *AIM-282            FREE
D. ___ *STAN-CS-76-561            $05.60     E. ___ *STAN-CS-76-561     FREE
F. ___ *STAN-CS-76-562            $03.50     G. ___ *STAN-CS-76-562     FREE
H. ___ *AIM-283                   $00.00     I. ___ *AIM-283            FREE

Please do not send money with your order, microfiche are free of charge.
Check here __ to change your address, print changes on the back of this form.
__________________________________________________________________________________























__________________________________________________________________________________


COMPUTER SCIENCE DEPARTMENT                                            AFFIX
STANFORD,CAL 94305                                                     POSTAGE






                                             VICKI L FAHRENHOLZ  
                                             LIBRARY AND PUBLICATIONS COMMITTEE
                                             COMPUTER SCIENCE DEPARTMENT
                                             STANFORD UNIVERSTY
                                             STANFORD, CALIFORNIA  94305
APPENDIX B							PAGE 57
- - - THIS IS AN EXAMPLE OF THE MAKEML RUN SUMMARY - - -


TO: LIBRARY AND PUBLICATIONS COMMITTEE

SUBJECT: AUG ABSTRACT AND MAILING SUMMARY

FROM: VICKI L FAHRENHOLZ  


There are a total of    9 reports to be offered this month.
The order cutoff date is 31 AUGUST 1976.  The following reports were offered:

*AIM-280|1,NONO,0000,02.40|2,NONO,0000|ARPA.99|2
*STAN-CS-76-556|3,NONO,0000,05.55|4,NONO,0000|NSF.49,ONR.49|1
*STAN-CS-76-557|5,NONO,0000,02.25|6,NONO,0000|ONR.39,NSF.39,IBM.19|1
*AIM-281|7,NONO,0000,02.90|8,NONO,0000|ARPA.99|2
*STAN-CS-76-559|9,NONO,0000,02.75|A,NONO,0000|NSF.49,ARO.49|0
*AIM-282|B,0000,0000,00.00|C,NONO,0000|ARPA.99|2
*STAN-CS-76-561|D,NONO,0000,05.60|E,NONO,0000|NSF.99|0
*STAN-CS-76-562|F,NONO,0000,03.50|G,NONO,0000|NSF.32,ONR.33,IBM.32|1
*AIM-283|H,NONO,0000,00.00|I,NONO,0000|ARPA.99|2



SUMMARY OF ABSTRACTS MAILED:

     TOTAL     1394
        US   787        ONR    26
   FOREIGN   524       ARPA    12
      USSR    19  AUTOMATIC    31
     IDMAI    64       FREE   179


ACCOUNTING DATA
          ACCOUNT         REPORT                 PERCENT           TOTAL PCT

          ARPA            AIM-280                100%               44
                          AIM-283                100%                 
                          AIM-282                100%                 
                          AIM-281                100%                 
          NSF             STAN-CS-76-556          50%               28
                          STAN-CS-76-562          33%                 
                          STAN-CS-76-561         100%                 
                          STAN-CS-76-559          50%                 
                          STAN-CS-76-557          40%                 
          ONR             STAN-CS-76-556          50%               12
                          STAN-CS-76-562          34%                 
                          STAN-CS-76-557          40%                 
          IBM             STAN-CS-76-557          20%                5
                          STAN-CS-76-562          33%                 
          ARO             STAN-CS-76-559          50%                5


The labels are in file AUGLAB, and can be listed whenever the
avery labels have been mounted on the printer by the monitor command
SP AUGLAB<cr>.  Don't forget to delete the file after listing it.

The price was determined by operator input or at a rate of $ .03
per page.  There will be   4 masters of the order form printed.
APPEXDIX B							PAGE 58
 - - - THIS IS AN EXAMPLE OF THE LABELS PRINTED BY MAKEML - - -  

COMPUTER SCIENCE DEPATMENT
LIBRARY AND PUBLICATIONS COMMITTEE
AUG ABSTRACT MAILING LIST



DR. S. H. KAMNITZER              #AFRSA
SPERRY UNIVAC
1402 BP CENTRE
THIBAULT SQUARE
CAPE TOWN, SOUTH AFRICA

K. J. MACGREGOR                  #AFRJG
UNIV. OF CAPE TOWN
DEPT. OF COMP. SCI.
RODEBOSCH, C.P.
SOUTH AFRICA

STEF W. POSTMA                   #AFRFW
DEPT. OF STAT. & COMP. SCI.
UNIVERSITY OF PRETORIA
PRETORIA 0002, SOUTH AFRICA


DR. R. BECKER                    #AFRRB
DEPT. OF MATHEMATICS
UNIVERSITY OF CAPETOWN
RONDEBOSCH 7800
CAPE, SOUTH AFRICA

D. BROWN                         #AFRDB
UNIVERSITY OF WITWATERSRAND
1 JAN SMUTS AVENUE
JOHANNESBURG 2001
SOUTH AFRICA

PROF. G.L. MURRAY                #AFRFL
DEPT. OF COMPUTER SCIENCE
UNIVERSITY OF STELLENBOSCH
STELLENBOSCH, SOUTH AFRICA


INSTITUTO DE MATEMATICA,         #ARGTT
ASTRONOMIA Y FISICA
UNIVERSIDAD NACIONAL DE CORDOBA
CIUDAD UNIVERSITARIA
CORDOBA, ARGENTINA

PROF. JUAN M. ALE                #ARGFN
BME MITRE 2689-P5
BUENOS AIRES, ARGENTINA


APPEXDIX B							PAGE 59
 - - - THIS IS AN EXAMPLE OF THE CHESHIRE LABELS PRINTED BY MAKEML - - -  


DR. RICHARD BRENT           #AUSRR C.S.I.R.O.                  #AUSSI FLINDERS UNIVERSITY OF      #AUS1E 
COMPUTER CENTRE, ANU               CENTRAL LIBRARY             (FREE) SOUTH AUSTRALIA - LIBRARY   (FREE) 
BOX 4, CANBERRA, ACT 2600          314 ALBERT ST.                     BEDFORD PARK, SOUTH AUSTRALIA 5042 
AUSTRALIA                          P.O. BOX 89, EAST MELBOURNE                                           
                                   AUSTRALIA                                                             

DR. G.W. HILL               #AUSRW PROF. F. HIRST              #AUS1F IIASA - LIBRARY             #AUSAI 
DIV. OF MATH STATISTICS            DEPT. OF COMPUTING SCIENCE         2361 LAXENBURG                     
CSIRO, PRIVATE BAG 1               UNIVERSITY OF ADELAIDE             AUSTRIA                            
GLEN OSMOND, S. AUSTRALIA          ADELAIDE, SOUTH AUSTRALIA 5001                                        
                                                                                                         

MR. CLIFF B. JONES          #AUSLB DR. DAVID JUPP              #AUSRI CANBERRA A.C.T. 2600 AUSTRA #AUSAT 
IBM LABORATORY VIENNA              CSIRO DIV OF LAND USE RESEARCH                                        
PARKRING 10, 1010 VIENNA 1         P.O. BOX 1666                                                         
AUSTRIA                            CANBERRA CITY 2601                                                    
                                   A.C.T.,AUSTRALIA                                                      

NICK KOMAROFF               #AUSKM DR. J. O'CALLAGHAN          #AUSJL DR. M. R. OSBORNE           #AUSMR 
PROFESSIONAL ENGINEER              DIV. OF COMPUTING RESEARCH         COMPUTER CENTER                    
29 KENSAL ST.                      CSIRO, BOX 1800 P. O.              AUSTRALIAN NATIONAL UNIV.          
MOOROOKA, QUEENSLAND 4105          CANBERRA CITY, A.C.T., AUSTRALIA   BOX 4, G.P.O.                      
AUSTRALIA                                                             CANBERRA, AUSTRALIA                

DR. JOHN SELF               #AUS20 PETER SUTTER                #AUSEU SYDNEY UNIVERSITY LIBRARY   #AUSUT 
DEPT. OF INFORMATION SCIENCE       LEHRKANZEL MATHEMATIK III   (FREE) GIFT & EXCHANGE SECTION            
UNIVERSITY OF MELBOURNE            UNIVERSITY LINZ                    UNIVERSITY OF SYDNEY               
PARKVILLE, AUSTRALIA 3052          A-4045, LINZ-AUHOF                 NSW, 2006, AUSTRALIA               
                                   AUSTRIA                                                               

MR. A. THOMPSON             #AUSAO DR. RODNEY TOPOR            #AUS25 THE UNIV. OF WESTERN AUSTRA #AUS35 
COMPUTING SERVICES UNIT            MONASH UNIVERSITY                  LIBRARY - EXCHANGES DEPT.   (FREE) 
UNIV. OF NEW SOUTH WALES           CLAYTON VICTORIA, AUSTRALIA 3168   NEDLANDS                           
P.O. BOX 1                                                            WESTERN AUSTRALIA... 6009          
KENSINGTON, N.S.W. AUSTRALIA                                                                             

H. WACKER                   #AUSHC GARTH WOLFENDALE            #AUSHF LIBRARY                     #AUT25 
A 4045 LINZ                        COMPUTER CENTRE                    COMPUTER SCIENCES DEPT.     (FREE) 
HOCHSCHULE LINZ                    AUSTRALIAN NATIONAL UNIVERSITY     UNIV. OF WISCONSIN                 
LEHRKAUZEL NUMERIK                 BOX 4, CANBERRA, ACT 2600          1210 WEST DAYTON STREET            
AUSTRIA                            AUSTRALIA                          MADISON, WISC. 53706               

COMPUTER SCIENCE DEPT., LIB #AUT01 PROF.W.KAHAN, DEPT. OF      #AUT05 DOCUMENT ROOM PROJ. MAC. RM #AUT09 
CARNEGIE-MELLON UNIVERSITY  (FREE) ELECTRICAL ENG. & COMPUTER  (FREE) ATTN. MISS BARBARA KOHL     (FREE) 
PITTSBURGH, PENNSYLVANIA 15213     COMPUTER SCIENCE LIBRARY, C.S.DIV. MASS. INSTITUTE OF TECH.           
                                   567 EVANS HALL, UNIV. OF CALIF.    545 TECHNOLOGY SQUARE              
                                   BERKELEY, CALIFORNIA 94720         CAMBRIDGE, MASSACHUSETTS 02139     

IBM SDD-LIBRARY             #AUT04 NATIONAL SCIENCE LIBRARY    #AUT13 UNIVERSITY OF TEXAS AT AUST #AUT21 
ATTN. K. TACKLE QUINN       (FREE) NATIONAL RESEARCH COUNCIL   (FREE) COMPUTER SCIENCE DEPT.      (FREE) 
DEPT. M-11036                      OTTAWA, ONTARIO, CANADA,K1A 0S2    TECHNICAL LITERATURE CENTER        
1501 CALIFORNIA AVE.                                                  AUSTIN, TEXAS 78712                
PALO ALTO, CALIFORNIA 94304                                                                              

COMPUTER SCIENCE LIBRARY (2 #AUT29 LIBRARY                     #AUT17 RESEARCH REPORTS COLLECTION #AUT30 
                            (FREE) COMPUTER SCIENCE DEPT.      (FREE) ENGINEERING LIBRARY (2 COPI (FREE) 
                                   UNIVERSITY OF ILLINOIS             MAIN LIBRARY 102                   
                                   URBANA, ILLINOIS 61801                                                
                                                                                                         

APPENDIX B							PAGE 60
- - - EXAMPLE OF AN INVOICE PRODUCED BY CSMAIL - - -

SUBJECT: REPORT ORDER
 
     TO: DR. EARNEST G. HOLTZMANN
 
   FROM: LIBRARY AND PUBLICATIONS COMMITTEE
	 COMPUTER SCIENCE DEPARTMENT
	 STANFORD UNIVERSITY
	 STANFORD,CALIFORNIA 94305
 
The following reports that you ordered from our AUG mailing list are
enclosed with this invoice.
 
        *STAN-CS-76-555
        *STAN-CS-76-556
        *STAN-CS-76-557
        *STAN-CS-76-560        $ 8.20
        *STAN-CS-76-561        $ 5.17
  
 
You currently owe $ 13.37 for this and previous months' orders.  Please make your
check payable to `CSD Stanford University', and return it with the
invoice at the bottom of this letter.
 
___________________________________________________________________________________

AUG INVOICE					AMOUNT DUE $ 13.37
					  PAYMENT ENCLOSED $__________
PAYMENT FOR ACCOUNT OF:  123NH
DR. EARNEST G. HOLTZMANN
GENERAL ELECTRIC
RESEARCH & DEVELOPMENT CTR.
SCHENECTADY, NEW YORK
 
MAKE YOUR CHECK PAYABLE TO STANFORD UNIVERSITY.
FORWARD PAYMENT AND INVOICE TO:	VICKI L FAHRENHOLZ  
				COMPUTER SCIENCE DEPARTMENT
				STANFORD UNIVERSITY
				STANFORD, CALIFORNIA 94305
 
- IT IS IMPORTANT THAT THIS PORTION OF THE INVOICE BE RETURNED WITH YOUR PAYMENT -
APPENDIX B							PAGE 61
- - - EXAMPLE OF AN INVOICE PRODUCED BY CSMAIL - - -

SUBJECT: REPORT ORDER
 
     TO: ROBERT C. WARD
 
   FROM: LIBRARY AND PUBLICATIONS COMMITTEE
	 COMPUTER SCIENCE DEPARTMENT
	 STANFORD UNIVERSITY
	 STANFORD,CALIFORNIA 94305
 
The following reports that you ordered from our AUG mailing list are
enclosed with this invoice.
 
        *STAN-CS-76-557        $ .05
  
 
You currently owe $ 10.50 for this and previous months' orders.  Please make your
check payable to `CSD Stanford University', and return it with the
invoice at the bottom of this letter.
 
We are sorry, but the following reports that you ordered from our
AUG mailing list are out of stock:
 
        *STAN-CS-76-555
 
 
These may be obtained in a few months' time from NTIS or, in some
cases from University Microfilms, or the IEEE Computer Repository.
 
___________________________________________________________________________________

AUG INVOICE					AMOUNT DUE $ 10.50
					  PAYMENT ENCLOSED $__________
PAYMENT FOR ACCOUNT OF:  378EC
ROBERT C. WARD
MATHEMATICS & STATISTICS RES.
DEPT. - BLDG. 9704-1
UNION CARBIDE CORP. P.O. BOX Y
OAK RIDGE, TENNESSEE
 
FORWARD PAYMENT AND INVOICE TO:	VICKI L FAHRENHOLZ  
				COMPUTER SCIENCE DEPARTMENT
				STANFORD UNIVERSITY
				STANFORD, CALIFORNIA 94305
 
- IT IS IMPORTANT THAT THIS PORTION OF THE INVOICE BE RETURNED WITH YOUR PAYMENT -
APPENDIX B							PAGE 62
- - - EXAMPLE OF AN THE RUN SUMMART PRODUCED BY CSMAIL - - -


SUBJECT: AUG CS REPORT MAILING

     TO: LIBRARY PUBLICATIONS COMMITTEE

   FROM: VICKI L FAHRENHOLZ  


The following is a summary of the reports that were mailed this month
broken down by report and class:

 REPORT NUMBER                TOTAL    ONF    ARPA    AUTO    FREE UNFILLED CHARGE

*STAN-CS-76-555                  7       0       0       0       0       3    7.00
*STAN-CS-76-555 (Fiche)          3       0       0       0       0       0      --
*STAN-CS-76-556                  3       0       0       0       0       0   15.24
*STAN-CS-76-556 (Fiche)          5       0       0       0       0       0      --
*STAN-CS-76-557                  4       0       0       0       0       0     .20
*STAN-CS-76-557 (Fiche)          5       0       0       0       0       0      --
*STAN-CS-76-558                  3       0       0       0       0       0    9.30
*STAN-CS-76-558 (Fiche)          2       0       0       0       0       0      --
*STAN-CS-76-560                  3       0       0       0       0       0   24.60
*STAN-CS-76-560 (Fiche)          3       0       0       0       0       0      --
*STAN-CS-76-561                  3       0       0       0       0       0   15.51
*STAN-CS-76-561 (Fiche)          3       0       0       0       0       0      --


The following is the amount charged for each report broken down by account:

 REPORT NUMBER      TOTAL        ACCOUNT      PERCENT      SUBTOTAL

*STAN-CS-76-555       7.00        ARPA          100           7.00
*STAN-CS-76-556      15.24        NSF           100          15.24
*STAN-CS-76-557        .20        ONR            34            .07
                                  NSF            33            .07
                                  IBM            33            .07
*STAN-CS-76-558       9.30        ARPA          100           9.30
*STAN-CS-76-560      24.60        ARPA          100          24.60
*STAN-CS-76-561      15.51        RES           100          15.51


The total California tax charged was $    .00


The following are the inactive accounts to whom mailing labels were printed:

      None were printed
APPENDIX B							PAGE 63
- - - EXAMPLE OF AN THE LABELS PRODUCED BY CSMAIL - - -

COMPUTER SCIENCE DEPARTMENT
LIBRARY AND PUBLICATIONS COMMITTEE
AUG REPORT MAILING LABELS



J. A. BARNDEN                    #ENGAA
COMPUTER SCIENCE DEPT.
READING UNIVERSITY
WHITEKNIGHTS, READING
BERKS., ENGLAND

GINI MARIA                       #ITANM
MILAN POLITECH. A.I. PROJECT
POLITECNICO IST. DI ELETTROTEC.
ED ELETTRON./ PIAZZA L. DE VINCI 32
20100 MILANO, ITALY

DR. EARNEST G. HOLTZMANN         #123NH
GENERAL ELECTRIC
RESEARCH & DEVELOPMENT CTR.
SCHENECTADY, NEW YORK
                    12345

DR. J. H. S. BRADLEY             #191JS
DEPT. OF PHYSICS & ATMOSPHERIC SCI.
DREXEL UNIVERSITY
PHILADELPHIA, PENNSYLVANIA
                    19104

MR. ROBERT MCINTIRE              #201OM
BUREAU OF LABOR STATISTICS
RM. 2518 GENERAL A.O. BLDG.
441 G STREET N.W.
WASHINGTON, D.C. 201212  20121

PROF. STEVEN F. MAIER            #277SF
GRAD. SCHOOL OF BUSINESS ADM.
DUKE UNIVERSITY
DURHAM, N. C.
                    27706

ROBERT C. WARD                   #378EC
MATHEMATICS & STATISTICS RES.
DEPT. - BLDG. 9704-1
UNION CARBIDE CORP. P.O. BOX Y
OAK RIDGE, TENNESSEE  37830

PROF. EDWARD A. FEUSTEL          #770EA
LAB. FOR COMP. SCI. & ENG.
RICE UNIVERSITY
HOUSTON, TEXAS
                    77001
APPENDIX C							PAGE 64
 - - - THIS IS AN EXAMPLE OF THE ADDFIL.DSK DICECTORY - - -

COMMENT ⊗   VALID 00140 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00018 00002	*857FA,8600C,850JG,857RE,857EN,857SF,913SJ,900AP,943SG,940NA,
C00020 00003	*904BE,930AR,949RT,902RT,940IJ,939BA,947FY,946FO,943DB,902HE,
C00023 00004	*900RD,931RP,900DM,902DB,939FE,943AG,945KO,950RB,943JB,947AB,
C00026 00005	*902CU,920FR,920AA,951JM,911AT,920DA,940CH,951CL,917CY,947PC,
C00029 00006	*940LR,950JD,945KL,921FR,943GE,947LN,950CA,914RN,947RE,950RD,
C00032 00007	*931ED,934HO,943HR,947SA,941TE,900RR,947RS,945IF,940SI,943SA,
C00035 00008	*911FN,920ML,927PR,943OR,945DR,920FN,947SN,946UG,900RE,904TL,
C00038 00009	*900FA,902FG,947UL,949HT,943ID,9430A,940EN,943DA,947ML,947FJ,
C00041 00010	*943NN,950EA,900EE,941RN,900FS,920FI,9400T,951EH,940NS,921IN,
C00044 00011	*904HJ,940CN,904MJ,940RK,947RD,941KR,900SN,900ML,911BE,900AE,
C00047 00012	*926FB,900IM,950SI,947NS,940NB,947EE,947IR,945IR,945ME,926EL,
C00050 00013	*940GR,902FH,954RL,943PL,927GS,921AM,943DM,902CA,950EW,949AR,
C00052 00014	*903BA,945IL,941EF,943AI,900RF,920DD,920KE,940ND,916RH,943KA,
C00054 00015	*940RP,950FR,931FP,930HC,945GD,945NO,900IU,943AE,920FS,950FN,
C00057 00016	*905LN,926FS,931JM,947RN,943OE,947PP,947AY,940NT,927ST,940MT,
C00059 00017	*904VT,943NO,945SR,904EH,911FO,940HO,943MR,950SE,945CL,956FR,
C00062 00018	*920UC,926ML,920IS,950AE,902OC,900EU,9400V,940WN,941FW,904NE,
C00065 00019	*902MJ,943LE,911EI,950UW,940GW,900HJ,911ES,943RS,947FI,941RR,
C00067 00020	*803VD,805HI,803NR,803RL,802IM,803DK,803RM,803TD,805ER,803FB,
C00069 00021	*803DA,805EO,803ME,805RR,803RS,803UZ,803RD,805FD,065FD,065EE,
C00072 00022	*066AC,062EB,065GL,065FJ,065FC,065RH,068AA,198NO,197MK,331AO,
C00075 00023	*323RP,303RN,303DR,303WM,303IL,303IE,968RM,968FR,968FI,968DT,
C00078 00024	*602EH,602IN,604EM,618WF,618FT,119OK,606OC,618NN,606JG,620AA,
C00081 00025	*618FW,602FC,618WD,627EJ,119LC,602HD,627AK,600NA,618IR,608FM,
C00084 00026	*618RI,604RG,604JA,618DP,600NM,618WP,618EI,618AR,618FH,606RR,
C00087 00027	*618SF,602CT,606TM,479KS,479WG,474NV,468NL,465TM,479AW,479DY,
C00090 00028	*522DA,522FT,522VP,524UC,500LG,522NM,500CE,660FI,660EN,660LX,
C00093 00029	*660FR,660FJ,665FA,665FB,660RO,421RA,405AI,421DT,405FG,405AN,
C00096 00030	*705FN,701MA,207FO,212FB,200CL,207FH,209MN,200IH,207RO,208OW,
C00099 00031	*207RA,207TW,207FI,209SW,207UK,212FG,207CE,214AM,200LE,209UE,
C00102 00032	*200IA,200MO,207FE,208EF,207HS,200NS,212FD,207SF,207RV,017YC,
C00104 00033	*010FM,021SO,017JS,021GT,021FT,021RE,021TM,021TA,021FE,021AG,
C00107 00034	*017MP,017LG,021HG,021FI,021JS,017IR,021IG,010FT,021OE,021FF,
C00110 00035	*010FN,021RV,021FK,021AE,018LT,021BD,018ME,021RT,021VI,021UE,
C00113 00036	*021FG,014JV,016LD,018DD,021MD,021FS,018ET,010TM,021AS,017MG,
C00116 00037	*017TP,021LN,010UN,021SG,021JT,0211U,021HA,021GO,021FA,010FD,
C00118 00038	*021FD,021FH,021NE,021LH,021HC,010EL,019SE,010FE,010FU,021WP,
C00121 00039	*010TS,021YW,481LW,481OF,481RD,481TW,488JL,491RA,488FY,488FS,
C00124 00040	*499FL,488NU,481BL,481NN,481NO,4810R,481FM,481II,481BT,481SD,
C00127 00041	*481CR,481RN,488CS,481FE,554KH,551LE,551GF,554IE,554RI,554PE,
C00130 00042	*563RE,554FB,554FD,554FJ,554WT,386FD,654WN,652AA,752FS,654AK,
C00133 00043	*681KA,685FO,685GE,037YH,088RL,089FL,085HS,085AT,079LL,089IR,
C00136 00044	*079DA,089TR,079ME,079CO,079RD,0854S,070DJ,079DN,079GK,089FA,
C00139 00045	*079HI,089FM,085II,085OP,085TV,085AR,088SR,079OS,089NR,089CR,
C00142 00046	*085TZ,085NA,070IA,089AR,085FW,085FF,079IW,085FX,875HJ,871OL,
C00145 00047	*875BC,875FD,875SG,875JN,878FA,875FK,871AA,875MO,871CE,878TN,
C00148 00048	*871MN,871SJ,871FE,121FK,118MD,148FD,105OH,100FE,100DD,100OT,
C00151 00049	*148SP,143IR,105AK,142FE,146JA,100NF,142SW,115HD,105DR,#####,
C00153 00050	*121HT,142FN,100LI,142FG,100DL,142DG,105SR,105RS,145NE,148JA,
C00156 00051	*100PH,136AD,123NH,148FH,126ET,100TE,100EI,105AD,100RU,117CB,
C00159 00052	*105JS,138EM,103KP,136IV,145LR,100PR,142EN,121EC,105RE,146PR,
C00162 00053	*100FT,119OS,105AE,100IN,132FD,117FP,117DH,142JN,115RV,105MW,
C00165 00054	*100OE,100RJ,100RW,105PR,105HL,142FD,105PL,145XP,117EL,275NE,
C00168 00055	*277LW,275FC,275EW,275AD,277IR,276LB,277FN,275FJ,277OD,277SF,
APPENDIX C							PAGE 65
- - -  EXAMPLE OF THE ADDRESS FILE FORMAT - - - -

*857FA,8600C,850JG,857RE,857EN,857SF,913SJ,900AP,943SG,#####,
* 85721|NNNNNNNNNNN0#857FA$000.00
PROF. DOUGLAS BROTZ
COMPUTER SCIENCE DEPT.
UNIV. OF ARIZONA
TUCSON, ARIZONA

* 86001|NNNNNNNNNNN0#8600C$000.00
GLENN LITCHFIELD
1080 EAST KAIBAB #5B
FLAGSTAFF, ARIZONA


* 85013|NNNNNNNNNNN0#850JG$000.00
DR. J. G. PURDY
ARIZONA HEART INSTITUTE
350 W. THOMAS ROAD
PHOENIX, ARIZONA

* 85721|NNNNNNNNNNN0#857RE$000.00
LARRY REEKER
DEPT. OF COMPUTER SCIENCE
UNIVERSITY OF ARIZONA
TUCSON, ARIZONA

* 85721|NNNNNNNNNNN0#857EN$000.00
MRS. LEEANN UNDERWOOD
DEPT. OF COMPUTER SCIENCE
UNIVERSITY OF ARIZONA
TUCSON, ARIZONA

* 85721|NNNNNNNNNNN0#857SF$000.00
UNIVERSITY OF ARIZONA
DEPT. OF COMPUTER SCIENCE
ATTN: JANET G. BROOKS
TUCSON, ARIZONA

* 91324|NNNNNNNNNNN0#913SJ$000.00
DR. RUSSELL J. ABBOTT
DEPT. OF COMPUTER SCIENCE
CALIFORNIA STATE UNIVERSITY
NORTHRIDGE, CALIFORNIA

* 90009|NNNNNNNNNNN0#900AP$000.00
AEROSPACE CORPORATION
S. B. CROWE
REPORTS ACQUISTIONS GROUP
P.O. BOX 92957
LOS ANGELES, CALIFORNIA
* 94303|NNNNNNNNNNN0#943SG$000.00
HANS R. AGGARWAL
992 MORENO AVENUE
PALO ALTO, CALIFORNIA
APPENDIX C							PAGE 66
- - - EXAMPLE OF HASHES THE ADDRESS FILE CROSS-REFERENCE LIST - - -  

HASH
01380
AFRSA0028300095
AFRJG0029400099
AFRFW0032100108
AFRRB0023500078
AFRDB0024100080
AFRFL0030600103
ARGTT0028000094
ARGFN0022600075
ARGHS0033300112
ARGLO0025600085
ARGRO0026300088
ARGFI0028800097
ARGOI0030900104
ARGAO0031500106
AUSJO0024100080
AUSMS0025900086
AUSRO0030900104
AUS300035700120
AUSHE0033900114
AUSRD0025600085
AUSRQ0032100108
AUSLE0028000094
AUSCM0030900104
AUSKG0034800117
AUS1A0022600075
AUSRN0022900076
AUSFB0023500078
AUSRR0024100080
AUSSI0025300084
AUS1E0026100087
AUSRW0027500092
AUS1F0027500092
AUSAI0027800093
AUSLB0028000094
AUSRI0028000094
AUSAT0028300095
AUSKM0028500096
AUSJL0031200105
AUSMR0031200105
AUS200033300112
AUSEU0034200115
AUSUT0034200115
AUSAO0034800117
AUS250034800117
AUS350035700120
AUSHC0036300122
AUSHF0036900124
AUS400039900136
AUSFZ0040500138
BELUR0027800093
BELWT0035100118
BELVM0036000121
BELET0028300095
BELRG0026600089
BELFM0030000101
APPENDIX C							PAGE 67
- - - EXAMPLE OF ORDER.DSK FILE BUILT BY CMONEY - - -
  
AUG ORDERS=0008 REPORTS=C
*770EA1357A
*ENGAA146C
*191JS13579B
*277SF1468AC
*123NH2469B
*378EC15
*201OM123456789ABC
*ITANM1246
APPENDIX C							PAGE 68
- - - EXAMPLE OF REPT.DSK FILE BUILT BY MAKEML - - -

AUG ENTRIES=0006 REPORTS=C
*STAN-CS-76-555|1,NONO,0008,01.75|2,NONO,0003|ARPA.99|2
*STAN-CS-76-556|3,NONO,0003,05.08|4,NONO,0006|NSF.99|0
*STAN-CS-76-557|5,NONO,0004,00.05|6,NONO,0005|ONR.33,NSF.32,IBM.32|1
*STAN-CS-76-558|7,NONO,0004,03.10|8,NONO,0002|ARPA.99|2
*STAN-CS-76-560|9,NONO,0003,08.20|A,NONO,0004|ARPA.99|2
*STAN-CS-76-561|B,NONO,0003,05.17|C,NONO,0003|RES.99|0



- - - EXAMPLE OF REPTFL.DSK FILE BUILT BY CSMAIL - - -

0009
*STAN-CS-76-555|1,NONO,0008,01.75|2,NONO,0003|ARPA.99|2
*STAN-CS-76-556|3,NONO,0003,05.08|4,NONO,0006|NSF.99|0
*STAN-CS-76-557|5,NONO,0004,00.05|6,NONO,0005|ONR.33,NSF.32,IBM.32|1
*STAN-CS-76-558|7,NONO,0004,03.10|8,NONO,0002|ARPA.99|2
*STAN-CS-76-560|9,NONO,0003,08.20|A,NONO,0004|ARPA.99|2
*STAN-CS-76-561|B,NONO,0003,05.17|C,NONO,0003|RES.99|0